Error: GCC_ANALYZER_WARNING (CWE-688): [#def1] libblockdev-3.5.0/src/plugins/crypto.c:3557:56: warning[-Wanalyzer-null-argument]: use of NULL where non-null expected libblockdev-3.5.0/src/plugins/crypto.c:3502:10: enter_function: entry to 'bd_crypto_escrow_device' libblockdev-3.5.0/src/plugins/crypto.c:3531:8: branch_false: following 'false' branch... libblockdev-3.5.0/src/plugins/crypto.c:3537:10: branch_false: ...to here libblockdev-3.5.0/src/plugins/crypto.c:3547:8: branch_false: following 'false' branch... libblockdev-3.5.0/src/plugins/crypto.c:3556:22: call_function: inlined call to 'g_strdup_inline' from 'bd_crypto_escrow_device' libblockdev-3.5.0/src/plugins/crypto.c:3557:56: danger: argument 1 ('<unknown>') NULL where non-null expected # 3555| # 3556| cert_data_copy = g_strdup (cert_data); # 3557|-> cert = CERT_DecodeCertFromPackage (cert_data_copy, strlen (cert_data_copy)); # 3558| if (!cert) { # 3559| g_set_error_literal (&l_error, BD_CRYPTO_ERROR, BD_CRYPTO_ERROR_CERT_DECODE, Error: GCC_ANALYZER_WARNING (CWE-688): [#def2] libblockdev-3.5.0/src/plugins/lvm/lvm.c:559:28: warning[-Wanalyzer-null-argument]: use of NULL where non-null expected libblockdev-3.5.0/src/plugins/lvm/lvm.c:1824:15: enter_function: entry to 'bd_lvm_lvs_tree' libblockdev-3.5.0/src/plugins/lvm/lvm.c:1836:8: branch_true: following 'true' branch (when 'vg_name' is non-NULL)... libblockdev-3.5.0/src/plugins/lvm/lvm.c:1837:9: branch_true: ...to here libblockdev-3.5.0/src/plugins/lvm/lvm.c:1839:16: call_function: calling 'call_lvm_and_parse_json_report' from 'bd_lvm_lvs_tree' libblockdev-3.5.0/src/plugins/lvm/lvm.c:1839:16: return_function: returning to 'bd_lvm_lvs_tree' from 'call_lvm_and_parse_json_report' libblockdev-3.5.0/src/plugins/lvm/lvm.c:1840:8: branch_false: following 'false' branch... libblockdev-3.5.0/src/plugins/lvm/lvm.c:1840:8: branch_false: ...to here libblockdev-3.5.0/src/plugins/lvm/lvm.c:1851:23: branch_true: following 'true' branch... libblockdev-3.5.0/src/plugins/lvm/lvm.c:1852:30: branch_true: ...to here libblockdev-3.5.0/src/plugins/lvm/lvm.c:1853:31: call_function: calling 'get_lv_data_from_json' from 'bd_lvm_lvs_tree' # 557| # 558| gchar *dev = g_strdup (json_array_get_string_element (array, 0)); # 559|-> gchar *paren = strrchr (dev, '('); # 560| if (paren) { # 561| data->segs[0]->pv_start_pe = g_ascii_strtoull (paren + 1, NULL, 10); Error: GCC_ANALYZER_WARNING (CWE-787): [#def3] libblockdev-3.5.0/src/plugins/nvme/nvme-error.c:108:9: warning[-Wanalyzer-out-of-bounds]: buffer over-read libblockdev-3.5.0/src/plugins/nvme/nvme-error.c:100:8: branch_false: following 'false' branch (when 'error' is non-NULL)... libblockdev-3.5.0/src/plugins/nvme/nvme-error.c:102:8: branch_false: ...to here libblockdev-3.5.0/src/plugins/nvme/nvme-error.c:102:8: branch_false: following 'false' branch (when 'result != 0')... libblockdev-3.5.0/src/plugins/nvme/nvme-error.c:107:8: branch_false: ...to here libblockdev-3.5.0/src/plugins/nvme/nvme-error.c:107:8: branch_true: following 'true' branch (when '_errno > 999')... libblockdev-3.5.0/src/plugins/nvme/nvme-error.c:108:9: branch_true: ...to here libblockdev-3.5.0/src/plugins/nvme/nvme-error.c:108:9: branch_true: following 'true' branch... libblockdev-3.5.0/src/plugins/nvme/nvme-error.c:108:9: branch_true: ...to here libblockdev-3.5.0/src/plugins/nvme/nvme-error.c:108:9: danger: read of 4 bytes at offset '(unsigned int)_errno * 4 + 17179865180' exceeds 'CSWTCH' # 106| # 107| if (_errno >= ENVME_CONNECT_RESOLVE) { # 108|-> switch (_errno) { # 109| case ENVME_CONNECT_ADDRFAM: # 110| case ENVME_CONNECT_TRADDR: Error: GCC_ANALYZER_WARNING (CWE-476): [#def4] libblockdev-3.5.0/src/plugins/part.c:1369:48: warning[-Wanalyzer-null-dereference]: dereference of NULL 'l_error' libblockdev-3.5.0/src/plugins/part.c:1354:10: enter_function: entry to 'bd_part_delete_part' libblockdev-3.5.0/src/plugins/part.c:1361:13: release_memory: 'l_error' is NULL libblockdev-3.5.0/src/plugins/part.c:1367:16: call_function: calling 'get_part_num' from 'bd_part_delete_part' libblockdev-3.5.0/src/plugins/part.c:1367:16: return_function: returning to 'bd_part_delete_part' from 'get_part_num' libblockdev-3.5.0/src/plugins/part.c:1368:8: branch_true: following 'true' branch... libblockdev-3.5.0/src/plugins/part.c:1369:55: branch_true: ...to here libblockdev-3.5.0/src/plugins/part.c:1369:55: release_memory: 'l_error' is NULL libblockdev-3.5.0/src/plugins/part.c:1369:48: danger: dereference of NULL 'l_error' # 1367| part_num = get_part_num (part, &l_error); # 1368| if (part_num == -1) { # 1369|-> bd_utils_report_finished (progress_id, l_error->message); # 1370| g_propagate_error (error, l_error); # 1371| return FALSE; Error: GCC_ANALYZER_WARNING (CWE-476): [#def5] libblockdev-3.5.0/src/plugins/part.c:1531:48: warning[-Wanalyzer-null-dereference]: dereference of NULL 'l_error' libblockdev-3.5.0/src/plugins/part.c:1508:10: enter_function: entry to 'bd_part_resize_part' libblockdev-3.5.0/src/plugins/part.c:1523:13: release_memory: 'l_error' is NULL libblockdev-3.5.0/src/plugins/part.c:1529:16: call_function: calling 'get_part_num' from 'bd_part_resize_part' libblockdev-3.5.0/src/plugins/part.c:1529:16: return_function: returning to 'bd_part_resize_part' from 'get_part_num' libblockdev-3.5.0/src/plugins/part.c:1530:8: branch_true: following 'true' branch... libblockdev-3.5.0/src/plugins/part.c:1531:55: branch_true: ...to here libblockdev-3.5.0/src/plugins/part.c:1531:55: release_memory: 'l_error' is NULL libblockdev-3.5.0/src/plugins/part.c:1531:48: danger: dereference of NULL 'l_error' # 1529| part_num = get_part_num (part, &l_error); # 1530| if (part_num == -1) { # 1531|-> bd_utils_report_finished (progress_id, l_error->message); # 1532| g_propagate_error (error, l_error); # 1533| return FALSE; Error: GCC_ANALYZER_WARNING (CWE-476): [#def6] libblockdev-3.5.0/src/plugins/part.c:1852:48: warning[-Wanalyzer-null-dereference]: dereference of NULL 'l_error' libblockdev-3.5.0/src/plugins/part.c:1805:10: enter_function: entry to 'bd_part_set_part_name' libblockdev-3.5.0/src/plugins/part.c:1814:13: release_memory: 'l_error' is NULL libblockdev-3.5.0/src/plugins/part.c:1820:11: call_function: calling 'get_device_context' from 'bd_part_set_part_name' libblockdev-3.5.0/src/plugins/part.c:1820:11: return_function: returning to 'bd_part_set_part_name' from 'get_device_context' libblockdev-3.5.0/src/plugins/part.c:1821:8: branch_false: following 'false' branch... libblockdev-3.5.0/src/plugins/part.c:1828:10: branch_false: ...to here libblockdev-3.5.0/src/plugins/part.c:1829:8: branch_false: following 'false' branch... libblockdev-3.5.0/src/plugins/part.c:1838:18: branch_false: ...to here libblockdev-3.5.0/src/plugins/part.c:1839:8: branch_false: following 'false' branch... libblockdev-3.5.0/src/plugins/part.c:1849:16: branch_false: ...to here libblockdev-3.5.0/src/plugins/part.c:1849:16: call_function: calling 'get_part_num' from 'bd_part_set_part_name' libblockdev-3.5.0/src/plugins/part.c:1849:16: return_function: returning to 'bd_part_set_part_name' from 'get_part_num' libblockdev-3.5.0/src/plugins/part.c:1850:8: branch_true: following 'true' branch... libblockdev-3.5.0/src/plugins/part.c:1851:9: branch_true: ...to here libblockdev-3.5.0/src/plugins/part.c:1852:55: release_memory: 'l_error' is NULL libblockdev-3.5.0/src/plugins/part.c:1852:48: danger: dereference of NULL 'l_error' # 1850| if (part_num == -1) { # 1851| close_context (cxt); # 1852|-> bd_utils_report_finished (progress_id, l_error->message); # 1853| g_propagate_error (error, l_error); # 1854| return FALSE; Error: GCC_ANALYZER_WARNING (CWE-476): [#def7] libblockdev-3.5.0/src/plugins/part.c:1933:48: warning[-Wanalyzer-null-dereference]: dereference of NULL 'l_error' libblockdev-3.5.0/src/plugins/part.c:1920:10: enter_function: entry to 'bd_part_set_part_type' libblockdev-3.5.0/src/plugins/part.c:1925:13: release_memory: 'l_error' is NULL libblockdev-3.5.0/src/plugins/part.c:1931:16: call_function: calling 'get_part_num' from 'bd_part_set_part_type' libblockdev-3.5.0/src/plugins/part.c:1931:16: return_function: returning to 'bd_part_set_part_type' from 'get_part_num' libblockdev-3.5.0/src/plugins/part.c:1932:8: branch_true: following 'true' branch... libblockdev-3.5.0/src/plugins/part.c:1933:55: branch_true: ...to here libblockdev-3.5.0/src/plugins/part.c:1933:55: release_memory: 'l_error' is NULL libblockdev-3.5.0/src/plugins/part.c:1933:48: danger: dereference of NULL 'l_error' # 1931| part_num = get_part_num (part, &l_error); # 1932| if (part_num == -1) { # 1933|-> bd_utils_report_finished (progress_id, l_error->message); # 1934| g_propagate_error (error, l_error); # 1935| return FALSE; Error: GCC_ANALYZER_WARNING (CWE-476): [#def8] libblockdev-3.5.0/src/plugins/part.c:1992:48: warning[-Wanalyzer-null-dereference]: dereference of NULL 'l_error' libblockdev-3.5.0/src/plugins/part.c:1979:10: enter_function: entry to 'bd_part_set_part_id' libblockdev-3.5.0/src/plugins/part.c:1984:13: release_memory: 'l_error' is NULL libblockdev-3.5.0/src/plugins/part.c:1990:16: call_function: calling 'get_part_num' from 'bd_part_set_part_id' libblockdev-3.5.0/src/plugins/part.c:1990:16: return_function: returning to 'bd_part_set_part_id' from 'get_part_num' libblockdev-3.5.0/src/plugins/part.c:1991:8: branch_true: following 'true' branch... libblockdev-3.5.0/src/plugins/part.c:1992:55: branch_true: ...to here libblockdev-3.5.0/src/plugins/part.c:1992:55: release_memory: 'l_error' is NULL libblockdev-3.5.0/src/plugins/part.c:1992:48: danger: dereference of NULL 'l_error' # 1990| part_num = get_part_num (part, &l_error); # 1991| if (part_num == -1) { # 1992|-> bd_utils_report_finished (progress_id, l_error->message); # 1993| g_propagate_error (error, l_error); # 1994| return FALSE; Error: GCC_ANALYZER_WARNING (CWE-476): [#def9] libblockdev-3.5.0/src/plugins/part.c:2085:48: warning[-Wanalyzer-null-dereference]: dereference of NULL 'l_error' libblockdev-3.5.0/src/plugins/part.c:2038:10: enter_function: entry to 'bd_part_set_part_uuid' libblockdev-3.5.0/src/plugins/part.c:2047:13: release_memory: 'l_error' is NULL libblockdev-3.5.0/src/plugins/part.c:2053:11: call_function: calling 'get_device_context' from 'bd_part_set_part_uuid' libblockdev-3.5.0/src/plugins/part.c:2053:11: return_function: returning to 'bd_part_set_part_uuid' from 'get_device_context' libblockdev-3.5.0/src/plugins/part.c:2054:8: branch_false: following 'false' branch... libblockdev-3.5.0/src/plugins/part.c:2061:10: branch_false: ...to here libblockdev-3.5.0/src/plugins/part.c:2062:8: branch_false: following 'false' branch... libblockdev-3.5.0/src/plugins/part.c:2071:18: branch_false: ...to here libblockdev-3.5.0/src/plugins/part.c:2072:8: branch_false: following 'false' branch... libblockdev-3.5.0/src/plugins/part.c:2082:16: branch_false: ...to here libblockdev-3.5.0/src/plugins/part.c:2082:16: call_function: calling 'get_part_num' from 'bd_part_set_part_uuid' libblockdev-3.5.0/src/plugins/part.c:2082:16: return_function: returning to 'bd_part_set_part_uuid' from 'get_part_num' libblockdev-3.5.0/src/plugins/part.c:2083:8: branch_true: following 'true' branch... libblockdev-3.5.0/src/plugins/part.c:2084:9: branch_true: ...to here libblockdev-3.5.0/src/plugins/part.c:2085:55: release_memory: 'l_error' is NULL libblockdev-3.5.0/src/plugins/part.c:2085:48: danger: dereference of NULL 'l_error' # 2083| if (part_num == -1) { # 2084| close_context (cxt); # 2085|-> bd_utils_report_finished (progress_id, l_error->message); # 2086| g_propagate_error (error, l_error); # 2087| return FALSE; Error: GCC_ANALYZER_WARNING (CWE-688): [#def10] libblockdev-3.5.0/src/utils/dev_utils.c:38:9: warning[-Wanalyzer-null-argument]: use of NULL 'path' where non-null expected libblockdev-3.5.0/src/utils/dev_utils.c:62:8: enter_function: entry to 'bd_utils_resolve_device' libblockdev-3.5.0/src/utils/dev_utils.c:67:8: branch_false: following 'false' branch (when '_result != 0')... libblockdev-3.5.0/src/utils/dev_utils.c:70:16: call_function: inlined call to 'g_strdup_inline' from 'bd_utils_resolve_device' libblockdev-3.5.0/src/utils/dev_utils.c:72:15: release_memory: 'path' is NULL libblockdev-3.5.0/src/utils/dev_utils.c:73:8: branch_true: following 'true' branch... libblockdev-3.5.0/src/utils/dev_utils.c:74:13: branch_true: ...to here libblockdev-3.5.0/src/utils/dev_utils.c:74:12: branch_true: following 'true' branch... libblockdev-3.5.0/src/utils/dev_utils.c:76:13: branch_true: ...to here libblockdev-3.5.0/src/utils/dev_utils.c:77:17: call_function: calling '_is_block_device' from 'bd_utils_resolve_device' # 36| struct stat sb; # 37| # 38|-> if (stat (path, &sb) != 0) { # 39| g_set_error (error, BD_UTILS_DEV_UTILS_ERROR, BD_UTILS_DEV_UTILS_ERROR_FAILED, # 40| "Failed to stat '%s': %s", path, strerror_l (errno, _C_LOCALE));
| analyzer-version-clippy | 1.97.1 |
| analyzer-version-cppcheck | 2.21.1 |
| analyzer-version-gcc | 16.1.1 |
| analyzer-version-gcc-analyzer | 16.1.1 |
| analyzer-version-shellcheck | 0.11.0 |
| analyzer-version-unicontrol | 0.0.2 |
| enabled-plugins | clippy, cppcheck, gcc, shellcheck, unicontrol |
| exit-code | 0 |
| host | ip-172-16-1-224.us-west-2.compute.internal |
| known-false-positives | /usr/share/csmock/known-false-positives.js |
| known-false-positives-rpm | known-false-positives-0.0.0.20260524.213755.g3c6d0be.main-1.el9.noarch |
| mock-config | fedora-rawhide-x86_64 |
| project-name | libblockdev-3.5.0-4.fc45 |
| store-results-to | /tmp/tmpbl2sbg7q/libblockdev-3.5.0-4.fc45.tar.xz |
| time-created | 2026-08-03 16:59:55 |
| time-finished | 2026-08-03 17:02:28 |
| tool | csmock |
| tool-args | '/usr/bin/csmock' '-r' 'fedora-rawhide-x86_64' '-t' 'gcc,clippy,unicontrol,shellcheck,cppcheck' '-o' '/tmp/tmpbl2sbg7q/libblockdev-3.5.0-4.fc45.tar.xz' '--gcc-analyze' '--unicontrol-notests' '--unicontrol-bidi-only' '--install' 'pam' '--gcc-analyzer-bin=/usr/bin/gcc' '/tmp/tmpbl2sbg7q/libblockdev-3.5.0-4.fc45.src.rpm' |
| tool-version | csmock-3.8.7.20260803.142340.gb75b18e-1.el9 |