Error: GCC_ANALYZER_WARNING (CWE-688): [#def1] libblockdev-3.3.0/src/plugins/crypto.c:3398:56: warning[-Wanalyzer-null-argument]: use of NULL where non-null expected libblockdev-3.3.0/src/plugins/crypto.c:3343:10: enter_function: entry to 'bd_crypto_escrow_device' libblockdev-3.3.0/src/plugins/crypto.c:3372:8: branch_false: following 'false' branch... libblockdev-3.3.0/src/plugins/crypto.c:3378:10: branch_false: ...to here libblockdev-3.3.0/src/plugins/crypto.c:3388:8: branch_false: following 'false' branch... libblockdev-3.3.0/src/plugins/crypto.c:3397:22: call_function: inlined call to 'g_strdup_inline' from 'bd_crypto_escrow_device' libblockdev-3.3.0/src/plugins/crypto.c:3398:56: danger: argument 1 ('<unknown>') NULL where non-null expected #argument 1 of '__builtin_strlen' must be non-null # 3396| # 3397| cert_data_copy = g_strdup (cert_data); # 3398|-> cert = CERT_DecodeCertFromPackage (cert_data_copy, strlen (cert_data_copy)); # 3399| if (!cert) { # 3400| g_set_error (&l_error, BD_CRYPTO_ERROR, BD_CRYPTO_ERROR_CERT_DECODE, Error: GCC_ANALYZER_WARNING (CWE-775): [#def2] libblockdev-3.3.0/src/plugins/fs/mount.c:491:16: warning[-Wanalyzer-fd-leak]: leak of file descriptor 'pipefd[0]' libblockdev-3.3.0/src/plugins/fs/mount.c:713:10: enter_function: entry to 'bd_fs_mount' libblockdev-3.3.0/src/plugins/fs/mount.c:741:21: branch_false: following 'false' branch... libblockdev-3.3.0/src/plugins/fs/mount.c:736:39: branch_false: ...to here libblockdev-3.3.0/src/plugins/fs/mount.c:736:29: branch_false: following 'false' branch... libblockdev-3.3.0/src/plugins/fs/mount.c:763:9: branch_false: ...to here libblockdev-3.3.0/src/plugins/fs/mount.c:763:8: branch_true: following 'true' branch... libblockdev-3.3.0/src/plugins/fs/mount.c:764:15: branch_true: ...to here libblockdev-3.3.0/src/plugins/fs/mount.c:764:15: call_function: calling 'run_as_user' from 'bd_fs_mount' # 489| g_set_error (error, BD_FS_ERROR, BD_FS_ERROR_FAIL, # 490| "Not running as root, cannot change the UID/GID."); # 491|-> return FALSE; # 492| } # 493| Error: GCC_ANALYZER_WARNING (CWE-775): [#def3] libblockdev-3.3.0/src/plugins/fs/mount.c:491:16: warning[-Wanalyzer-fd-leak]: leak of file descriptor 'pipefd[1]' libblockdev-3.3.0/src/plugins/fs/mount.c:713:10: enter_function: entry to 'bd_fs_mount' libblockdev-3.3.0/src/plugins/fs/mount.c:741:21: branch_false: following 'false' branch... libblockdev-3.3.0/src/plugins/fs/mount.c:736:39: branch_false: ...to here libblockdev-3.3.0/src/plugins/fs/mount.c:736:29: branch_false: following 'false' branch... libblockdev-3.3.0/src/plugins/fs/mount.c:763:9: branch_false: ...to here libblockdev-3.3.0/src/plugins/fs/mount.c:763:8: branch_true: following 'true' branch... libblockdev-3.3.0/src/plugins/fs/mount.c:764:15: branch_true: ...to here libblockdev-3.3.0/src/plugins/fs/mount.c:764:15: call_function: calling 'run_as_user' from 'bd_fs_mount' # 489| g_set_error (error, BD_FS_ERROR, BD_FS_ERROR_FAIL, # 490| "Not running as root, cannot change the UID/GID."); # 491|-> return FALSE; # 492| } # 493| Error: GCC_ANALYZER_WARNING (CWE-775): [#def4] libblockdev-3.3.0/src/plugins/loop.c:157:10: warning[-Wanalyzer-fd-leak]: leak of file descriptor 'open(<unknown>, 0)' libblockdev-3.3.0/src/plugins/loop.c:157:10: acquire_resource: opened here libblockdev-3.3.0/src/plugins/loop.c:157:10: danger: 'open(<unknown>, 0)' leaks here; was opened at [(1)](sarif:/runs/0/results/0/codeFlows/0/threadFlows/0/locations/0) # 155| dev_loop = g_strdup_printf ("/dev/%s", loop); # 156| # 157|-> fd = open (dev_loop ? dev_loop : loop, O_RDONLY); # 158| if (fd < 0) { # 159| g_set_error (error, BD_LOOP_ERROR, BD_LOOP_ERROR_DEVICE, Error: GCC_ANALYZER_WARNING (CWE-476): [#def5] libblockdev-3.3.0/src/plugins/nvme/nvme-info.c:492:10: warning[-Wanalyzer-null-dereference]: dereference of NULL '0' libblockdev-3.3.0/src/plugins/nvme/nvme-info.c:467:24: enter_function: entry to 'bd_nvme_get_controller_info' libblockdev-3.3.0/src/plugins/nvme/nvme-info.c:474:10: call_function: calling '_open_dev' from 'bd_nvme_get_controller_info' libblockdev-3.3.0/src/plugins/nvme/nvme-info.c:474:10: return_function: returning to 'bd_nvme_get_controller_info' from '_open_dev' libblockdev-3.3.0/src/plugins/nvme/nvme-info.c:475:8: branch_false: following 'false' branch... libblockdev-3.3.0/src/plugins/nvme/nvme-info.c:478:15: branch_false: ...to here libblockdev-3.3.0/src/plugins/nvme/nvme-info.c:478:15: call_function: calling '_nvme_alloc' from 'bd_nvme_get_controller_info' libblockdev-3.3.0/src/plugins/nvme/nvme-info.c:478:15: return_function: returning to 'bd_nvme_get_controller_info' from '_nvme_alloc' libblockdev-3.3.0/src/plugins/nvme/nvme-info.c:479:5: branch_false: following 'false' branch... libblockdev-3.3.0/src/plugins/nvme/nvme-info.c:479:5: branch_false: ...to here libblockdev-3.3.0/src/plugins/nvme/nvme-info.c:482:8: branch_false: following 'false' branch... libblockdev-3.3.0/src/plugins/nvme/nvme-info.c:489:5: branch_false: ...to here libblockdev-3.3.0/src/plugins/nvme/nvme-info.c:492:10: danger: dereference of NULL '_nvme_alloc(4096)' # 490| # 491| info = g_new0 (BDNVMEControllerInfo, 1); # 492|-> if ((ctrl_id->cmic & NVME_CTRL_CMIC_MULTI_PORT) == NVME_CTRL_CMIC_MULTI_PORT) # 493| info->features |= BD_NVME_CTRL_FEAT_MULTIPORT; # 494| if ((ctrl_id->cmic & NVME_CTRL_CMIC_MULTI_CTRL) == NVME_CTRL_CMIC_MULTI_CTRL) Error: GCC_ANALYZER_WARNING (CWE-476): [#def6] libblockdev-3.3.0/src/plugins/nvme/nvme-info.c:636:26: warning[-Wanalyzer-null-dereference]: dereference of NULL '0' libblockdev-3.3.0/src/plugins/nvme/nvme-info.c:587:22: enter_function: entry to 'bd_nvme_get_namespace_info' libblockdev-3.3.0/src/plugins/nvme/nvme-info.c:605:10: call_function: calling '_open_dev' from 'bd_nvme_get_namespace_info' libblockdev-3.3.0/src/plugins/nvme/nvme-info.c:605:10: return_function: returning to 'bd_nvme_get_namespace_info' from '_open_dev' libblockdev-3.3.0/src/plugins/nvme/nvme-info.c:606:8: branch_false: following 'false' branch... libblockdev-3.3.0/src/plugins/nvme/nvme-info.c:610:11: branch_false: ...to here libblockdev-3.3.0/src/plugins/nvme/nvme-info.c:611:8: branch_false: following 'false' branch... libblockdev-3.3.0/src/plugins/nvme/nvme-info.c:619:15: branch_false: ...to here libblockdev-3.3.0/src/plugins/nvme/nvme-info.c:619:15: call_function: calling '_nvme_alloc' from 'bd_nvme_get_namespace_info' libblockdev-3.3.0/src/plugins/nvme/nvme-info.c:619:15: return_function: returning to 'bd_nvme_get_namespace_info' from '_nvme_alloc' libblockdev-3.3.0/src/plugins/nvme/nvme-info.c:620:5: branch_false: following 'false' branch... libblockdev-3.3.0/src/plugins/nvme/nvme-info.c:620:5: branch_false: ...to here libblockdev-3.3.0/src/plugins/nvme/nvme-info.c:622:8: branch_false: following 'false' branch... libblockdev-3.3.0/src/plugins/nvme/nvme-info.c:631:15: branch_false: ...to here libblockdev-3.3.0/src/plugins/nvme/nvme-info.c:631:15: call_function: calling '_nvme_alloc' from 'bd_nvme_get_namespace_info' libblockdev-3.3.0/src/plugins/nvme/nvme-info.c:631:15: return_function: returning to 'bd_nvme_get_namespace_info' from '_nvme_alloc' libblockdev-3.3.0/src/plugins/nvme/nvme-info.c:632:5: branch_false: following 'false' branch... libblockdev-3.3.0/src/plugins/nvme/nvme-info.c:632:5: branch_false: ...to here libblockdev-3.3.0/src/plugins/nvme/nvme-info.c:636:8: branch_true: following 'true' branch... libblockdev-3.3.0/src/plugins/nvme/nvme-info.c:636:26: branch_true: ...to here libblockdev-3.3.0/src/plugins/nvme/nvme-info.c:636:26: danger: dereference of NULL '_nvme_alloc(4096)' # 634| # 635| /* send the NVME_IDENTIFY_CNS_NS_DESC_LIST ioctl, NVMe 1.3 */ # 636|-> if (ret_ctrl == 0 && GUINT32_FROM_LE (ctrl_id->ver) >= 0x10300) { # 637| descs = _nvme_alloc (NVME_IDENTIFY_DATA_SIZE); # 638| g_warn_if_fail (descs != NULL); Error: GCC_ANALYZER_WARNING (CWE-476): [#def7] libblockdev-3.3.0/src/plugins/nvme/nvme-info.c:652:19: warning[-Wanalyzer-null-dereference]: dereference of NULL '0' libblockdev-3.3.0/src/plugins/nvme/nvme-info.c:587:22: enter_function: entry to 'bd_nvme_get_namespace_info' libblockdev-3.3.0/src/plugins/nvme/nvme-info.c:605:10: call_function: calling '_open_dev' from 'bd_nvme_get_namespace_info' libblockdev-3.3.0/src/plugins/nvme/nvme-info.c:605:10: return_function: returning to 'bd_nvme_get_namespace_info' from '_open_dev' libblockdev-3.3.0/src/plugins/nvme/nvme-info.c:606:8: branch_false: following 'false' branch... libblockdev-3.3.0/src/plugins/nvme/nvme-info.c:610:11: branch_false: ...to here libblockdev-3.3.0/src/plugins/nvme/nvme-info.c:611:8: branch_false: following 'false' branch... libblockdev-3.3.0/src/plugins/nvme/nvme-info.c:619:15: branch_false: ...to here libblockdev-3.3.0/src/plugins/nvme/nvme-info.c:619:15: call_function: calling '_nvme_alloc' from 'bd_nvme_get_namespace_info' libblockdev-3.3.0/src/plugins/nvme/nvme-info.c:619:15: return_function: returning to 'bd_nvme_get_namespace_info' from '_nvme_alloc' libblockdev-3.3.0/src/plugins/nvme/nvme-info.c:620:5: branch_false: following 'false' branch... libblockdev-3.3.0/src/plugins/nvme/nvme-info.c:620:5: branch_false: ...to here libblockdev-3.3.0/src/plugins/nvme/nvme-info.c:622:8: branch_false: following 'false' branch... libblockdev-3.3.0/src/plugins/nvme/nvme-info.c:631:15: branch_false: ...to here libblockdev-3.3.0/src/plugins/nvme/nvme-info.c:631:15: call_function: calling '_nvme_alloc' from 'bd_nvme_get_namespace_info' libblockdev-3.3.0/src/plugins/nvme/nvme-info.c:631:15: return_function: returning to 'bd_nvme_get_namespace_info' from '_nvme_alloc' libblockdev-3.3.0/src/plugins/nvme/nvme-info.c:632:5: branch_false: following 'false' branch... libblockdev-3.3.0/src/plugins/nvme/nvme-info.c:632:5: branch_false: ...to here libblockdev-3.3.0/src/plugins/nvme/nvme-info.c:636:8: branch_false: following 'false' branch... libblockdev-3.3.0/src/plugins/nvme/nvme-info.c:648:5: branch_false: ...to here libblockdev-3.3.0/src/plugins/nvme/nvme-info.c:652:19: danger: dereference of NULL '_nvme_alloc(4096)' # 650| info = g_new0 (BDNVMENamespaceInfo, 1); # 651| info->nsid = nsid; # 652|-> info->nsize = GUINT64_FROM_LE (ns_info->nsze); # 653| info->ncap = GUINT64_FROM_LE (ns_info->ncap); # 654| info->nuse = GUINT64_FROM_LE (ns_info->nuse); Error: GCC_ANALYZER_WARNING (CWE-476): [#def8] libblockdev-3.3.0/src/plugins/nvme/nvme-info.c:791:10: warning[-Wanalyzer-null-dereference]: dereference of NULL '0' libblockdev-3.3.0/src/plugins/nvme/nvme-info.c:750:18: enter_function: entry to 'bd_nvme_get_smart_log' libblockdev-3.3.0/src/plugins/nvme/nvme-info.c:760:10: call_function: calling '_open_dev' from 'bd_nvme_get_smart_log' libblockdev-3.3.0/src/plugins/nvme/nvme-info.c:760:10: return_function: returning to 'bd_nvme_get_smart_log' from '_open_dev' libblockdev-3.3.0/src/plugins/nvme/nvme-info.c:761:8: branch_false: following 'false' branch... libblockdev-3.3.0/src/plugins/nvme/nvme-info.c:765:15: branch_false: ...to here libblockdev-3.3.0/src/plugins/nvme/nvme-info.c:765:15: call_function: calling '_nvme_alloc' from 'bd_nvme_get_smart_log' libblockdev-3.3.0/src/plugins/nvme/nvme-info.c:765:15: return_function: returning to 'bd_nvme_get_smart_log' from '_nvme_alloc' libblockdev-3.3.0/src/plugins/nvme/nvme-info.c:766:5: branch_false: following 'false' branch... libblockdev-3.3.0/src/plugins/nvme/nvme-info.c:766:5: branch_false: ...to here libblockdev-3.3.0/src/plugins/nvme/nvme-info.c:768:8: branch_false: following 'false' branch... libblockdev-3.3.0/src/plugins/nvme/nvme-info.c:777:17: branch_false: ...to here libblockdev-3.3.0/src/plugins/nvme/nvme-info.c:777:17: call_function: calling '_nvme_alloc' from 'bd_nvme_get_smart_log' libblockdev-3.3.0/src/plugins/nvme/nvme-info.c:777:17: return_function: returning to 'bd_nvme_get_smart_log' from '_nvme_alloc' libblockdev-3.3.0/src/plugins/nvme/nvme-info.c:778:5: branch_false: following 'false' branch... libblockdev-3.3.0/src/plugins/nvme/nvme-info.c:778:5: branch_false: ...to here libblockdev-3.3.0/src/plugins/nvme/nvme-info.c:780:8: branch_false: following 'false' branch... libblockdev-3.3.0/src/plugins/nvme/nvme-info.c:788:5: branch_false: ...to here libblockdev-3.3.0/src/plugins/nvme/nvme-info.c:791:10: danger: dereference of NULL '_nvme_alloc(512)' # 789| # 790| log = g_new0 (BDNVMESmartLog, 1); # 791|-> if ((smart_log->critical_warning & NVME_SMART_CRIT_SPARE) == NVME_SMART_CRIT_SPARE) # 792| log->critical_warning |= BD_NVME_SMART_CRITICAL_WARNING_SPARE; # 793| if ((smart_log->critical_warning & NVME_SMART_CRIT_TEMPERATURE) == NVME_SMART_CRIT_TEMPERATURE) Error: GCC_ANALYZER_WARNING (CWE-476): [#def9] libblockdev-3.3.0/src/plugins/nvme/nvme-info.c:822:23: warning[-Wanalyzer-null-dereference]: dereference of NULL '0' libblockdev-3.3.0/src/plugins/nvme/nvme-info.c:750:18: enter_function: entry to 'bd_nvme_get_smart_log' libblockdev-3.3.0/src/plugins/nvme/nvme-info.c:760:10: call_function: calling '_open_dev' from 'bd_nvme_get_smart_log' libblockdev-3.3.0/src/plugins/nvme/nvme-info.c:760:10: return_function: returning to 'bd_nvme_get_smart_log' from '_open_dev' libblockdev-3.3.0/src/plugins/nvme/nvme-info.c:761:8: branch_false: following 'false' branch... libblockdev-3.3.0/src/plugins/nvme/nvme-info.c:765:15: branch_false: ...to here libblockdev-3.3.0/src/plugins/nvme/nvme-info.c:765:15: call_function: calling '_nvme_alloc' from 'bd_nvme_get_smart_log' libblockdev-3.3.0/src/plugins/nvme/nvme-info.c:765:15: return_function: returning to 'bd_nvme_get_smart_log' from '_nvme_alloc' libblockdev-3.3.0/src/plugins/nvme/nvme-info.c:766:5: branch_false: following 'false' branch... libblockdev-3.3.0/src/plugins/nvme/nvme-info.c:766:5: branch_false: ...to here libblockdev-3.3.0/src/plugins/nvme/nvme-info.c:768:8: branch_false: following 'false' branch... libblockdev-3.3.0/src/plugins/nvme/nvme-info.c:777:17: branch_false: ...to here libblockdev-3.3.0/src/plugins/nvme/nvme-info.c:777:17: call_function: calling '_nvme_alloc' from 'bd_nvme_get_smart_log' libblockdev-3.3.0/src/plugins/nvme/nvme-info.c:777:17: return_function: returning to 'bd_nvme_get_smart_log' from '_nvme_alloc' libblockdev-3.3.0/src/plugins/nvme/nvme-info.c:778:5: branch_true: following 'true' branch... libblockdev-3.3.0/src/plugins/nvme/nvme-info.c:779:11: call_function: inlined call to 'nvme_get_log_smart' from 'bd_nvme_get_smart_log' libblockdev-3.3.0/src/plugins/nvme/nvme-info.c:780:8: branch_false: following 'false' branch... libblockdev-3.3.0/src/plugins/nvme/nvme-info.c:788:5: branch_false: ...to here libblockdev-3.3.0/src/plugins/nvme/nvme-info.c:806:28: call_function: calling 'int128_to_guint64' from 'bd_nvme_get_smart_log' libblockdev-3.3.0/src/plugins/nvme/nvme-info.c:806:28: return_function: returning to 'bd_nvme_get_smart_log' from 'int128_to_guint64' libblockdev-3.3.0/src/plugins/nvme/nvme-info.c:807:31: call_function: calling 'int128_to_guint64' from 'bd_nvme_get_smart_log' libblockdev-3.3.0/src/plugins/nvme/nvme-info.c:807:31: return_function: returning to 'bd_nvme_get_smart_log' from 'int128_to_guint64' libblockdev-3.3.0/src/plugins/nvme/nvme-info.c:808:27: call_function: calling 'int128_to_guint64' from 'bd_nvme_get_smart_log' libblockdev-3.3.0/src/plugins/nvme/nvme-info.c:808:27: return_function: returning to 'bd_nvme_get_smart_log' from 'int128_to_guint64' libblockdev-3.3.0/src/plugins/nvme/nvme-info.c:809:25: call_function: calling 'int128_to_guint64' from 'bd_nvme_get_smart_log' libblockdev-3.3.0/src/plugins/nvme/nvme-info.c:809:25: return_function: returning to 'bd_nvme_get_smart_log' from 'int128_to_guint64' libblockdev-3.3.0/src/plugins/nvme/nvme-info.c:810:27: call_function: calling 'int128_to_guint64' from 'bd_nvme_get_smart_log' libblockdev-3.3.0/src/plugins/nvme/nvme-info.c:810:27: return_function: returning to 'bd_nvme_get_smart_log' from 'int128_to_guint64' libblockdev-3.3.0/src/plugins/nvme/nvme-info.c:811:29: call_function: calling 'int128_to_guint64' from 'bd_nvme_get_smart_log' libblockdev-3.3.0/src/plugins/nvme/nvme-info.c:811:29: return_function: returning to 'bd_nvme_get_smart_log' from 'int128_to_guint64' libblockdev-3.3.0/src/plugins/nvme/nvme-info.c:812:25: call_function: calling 'int128_to_guint64' from 'bd_nvme_get_smart_log' libblockdev-3.3.0/src/plugins/nvme/nvme-info.c:812:25: return_function: returning to 'bd_nvme_get_smart_log' from 'int128_to_guint64' libblockdev-3.3.0/src/plugins/nvme/nvme-info.c:813:32: call_function: calling 'int128_to_guint64' from 'bd_nvme_get_smart_log' libblockdev-3.3.0/src/plugins/nvme/nvme-info.c:813:32: return_function: returning to 'bd_nvme_get_smart_log' from 'int128_to_guint64' libblockdev-3.3.0/src/plugins/nvme/nvme-info.c:816:17: branch_true: following 'true' branch (when 'i != 8')... libblockdev-3.3.0/src/plugins/nvme/nvme-info.c:817:32: branch_true: ...to here libblockdev-3.3.0/src/plugins/nvme/nvme-info.c:822:23: danger: dereference of NULL '_nvme_alloc(4096)' # 820| # 821| if (ret_identify == 0) { # 822|-> log->wctemp = GUINT16_FROM_LE (ctrl_id->wctemp); # 823| log->cctemp = GUINT16_FROM_LE (ctrl_id->cctemp); # 824| } Error: GCC_ANALYZER_WARNING (CWE-476): [#def10] libblockdev-3.3.0/src/plugins/nvme/nvme-info.c:881:12: warning[-Wanalyzer-null-dereference]: dereference of NULL '0' libblockdev-3.3.0/src/plugins/nvme/nvme-info.c:855:24: enter_function: entry to 'bd_nvme_get_error_log_entries' libblockdev-3.3.0/src/plugins/nvme/nvme-info.c:865:10: call_function: calling '_open_dev' from 'bd_nvme_get_error_log_entries' libblockdev-3.3.0/src/plugins/nvme/nvme-info.c:865:10: return_function: returning to 'bd_nvme_get_error_log_entries' from '_open_dev' libblockdev-3.3.0/src/plugins/nvme/nvme-info.c:866:8: branch_false: following 'false' branch... libblockdev-3.3.0/src/plugins/nvme/nvme-info.c:870:15: branch_false: ...to here libblockdev-3.3.0/src/plugins/nvme/nvme-info.c:870:15: call_function: calling '_nvme_alloc' from 'bd_nvme_get_error_log_entries' libblockdev-3.3.0/src/plugins/nvme/nvme-info.c:870:15: return_function: returning to 'bd_nvme_get_error_log_entries' from '_nvme_alloc' libblockdev-3.3.0/src/plugins/nvme/nvme-info.c:871:5: branch_false: following 'false' branch... libblockdev-3.3.0/src/plugins/nvme/nvme-info.c:871:5: branch_false: ...to here libblockdev-3.3.0/src/plugins/nvme/nvme-info.c:873:8: branch_false: following 'false' branch... libblockdev-3.3.0/src/plugins/nvme/nvme-info.c:881:12: branch_false: ...to here libblockdev-3.3.0/src/plugins/nvme/nvme-info.c:881:12: danger: dereference of NULL '_nvme_alloc(4096)' # 879| } # 880| # 881|-> elpe = ctrl_id->elpe + 1; # 882| free (ctrl_id); # 883| Error: GCC_ANALYZER_WARNING (CWE-476): [#def11] libblockdev-3.3.0/src/plugins/nvme/nvme-info.c:900:13: warning[-Wanalyzer-null-dereference]: dereference of NULL '0' libblockdev-3.3.0/src/plugins/nvme/nvme-info.c:855:24: enter_function: entry to 'bd_nvme_get_error_log_entries' libblockdev-3.3.0/src/plugins/nvme/nvme-info.c:865:10: call_function: calling '_open_dev' from 'bd_nvme_get_error_log_entries' libblockdev-3.3.0/src/plugins/nvme/nvme-info.c:865:10: return_function: returning to 'bd_nvme_get_error_log_entries' from '_open_dev' libblockdev-3.3.0/src/plugins/nvme/nvme-info.c:866:8: branch_false: following 'false' branch... libblockdev-3.3.0/src/plugins/nvme/nvme-info.c:870:15: branch_false: ...to here libblockdev-3.3.0/src/plugins/nvme/nvme-info.c:870:15: call_function: calling '_nvme_alloc' from 'bd_nvme_get_error_log_entries' libblockdev-3.3.0/src/plugins/nvme/nvme-info.c:870:15: return_function: returning to 'bd_nvme_get_error_log_entries' from '_nvme_alloc' libblockdev-3.3.0/src/plugins/nvme/nvme-info.c:871:5: branch_true: following 'true' branch... libblockdev-3.3.0/src/plugins/nvme/nvme-info.c:872:11: call_function: inlined call to 'nvme_identify_ctrl' from 'bd_nvme_get_error_log_entries' libblockdev-3.3.0/src/plugins/nvme/nvme-info.c:873:8: branch_false: following 'false' branch... libblockdev-3.3.0/src/plugins/nvme/nvme-info.c:881:12: branch_false: ...to here libblockdev-3.3.0/src/plugins/nvme/nvme-info.c:885:15: call_function: calling '_nvme_alloc' from 'bd_nvme_get_error_log_entries' libblockdev-3.3.0/src/plugins/nvme/nvme-info.c:885:15: return_function: returning to 'bd_nvme_get_error_log_entries' from '_nvme_alloc' libblockdev-3.3.0/src/plugins/nvme/nvme-info.c:886:5: branch_false: following 'false' branch... libblockdev-3.3.0/src/plugins/nvme/nvme-info.c:886:5: branch_false: ...to here libblockdev-3.3.0/src/plugins/nvme/nvme-info.c:888:8: branch_false: following 'false' branch... libblockdev-3.3.0/src/plugins/nvme/nvme-info.c:895:5: branch_false: ...to here libblockdev-3.3.0/src/plugins/nvme/nvme-info.c:899:17: branch_true: following 'true' branch (when 'i < elpe')... libblockdev-3.3.0/src/plugins/nvme/nvme-info.c:900:13: branch_true: ...to here libblockdev-3.3.0/src/plugins/nvme/nvme-info.c:900:13: release_memory: '0' is NULL libblockdev-3.3.0/src/plugins/nvme/nvme-info.c:900:13: danger: dereference of NULL '_nvme_alloc((long unsigned int)((int)*<unknown>.elpe + 1) * 64) + (long unsigned int)i * 64' # 898| ptr_array = g_ptr_array_new (); # 899| for (i = 0; i < elpe; i++) { # 900|-> if (GUINT64_FROM_LE (err_log[i].error_count) > 0) { # 901| BDNVMEErrorLogEntry *entry; # 902| Error: GCC_ANALYZER_WARNING (CWE-476): [#def12] libblockdev-3.3.0/src/plugins/nvme/nvme-info.c:964:13: warning[-Wanalyzer-null-dereference]: dereference of NULL '0' libblockdev-3.3.0/src/plugins/nvme/nvme-info.c:937:21: enter_function: entry to 'bd_nvme_get_self_test_log' libblockdev-3.3.0/src/plugins/nvme/nvme-info.c:946:10: call_function: calling '_open_dev' from 'bd_nvme_get_self_test_log' libblockdev-3.3.0/src/plugins/nvme/nvme-info.c:946:10: return_function: returning to 'bd_nvme_get_self_test_log' from '_open_dev' libblockdev-3.3.0/src/plugins/nvme/nvme-info.c:947:8: branch_false: following 'false' branch... libblockdev-3.3.0/src/plugins/nvme/nvme-info.c:951:21: branch_false: ...to here libblockdev-3.3.0/src/plugins/nvme/nvme-info.c:951:21: call_function: calling '_nvme_alloc' from 'bd_nvme_get_self_test_log' libblockdev-3.3.0/src/plugins/nvme/nvme-info.c:951:21: return_function: returning to 'bd_nvme_get_self_test_log' from '_nvme_alloc' libblockdev-3.3.0/src/plugins/nvme/nvme-info.c:952:5: branch_false: following 'false' branch... libblockdev-3.3.0/src/plugins/nvme/nvme-info.c:952:5: branch_false: ...to here libblockdev-3.3.0/src/plugins/nvme/nvme-info.c:953:11: call_function: calling 'nvme_get_log_device_self_test' from 'bd_nvme_get_self_test_log' libblockdev-3.3.0/src/plugins/nvme/nvme-info.c:953:11: return_function: returning to 'bd_nvme_get_self_test_log' from 'nvme_get_log_device_self_test' libblockdev-3.3.0/src/plugins/nvme/nvme-info.c:954:8: branch_false: following 'false' branch... libblockdev-3.3.0/src/plugins/nvme/nvme-info.c:961:5: branch_false: ...to here libblockdev-3.3.0/src/plugins/nvme/nvme-info.c:964:13: danger: dereference of NULL '_nvme_alloc(564)' # 962| # 963| log = g_new0 (BDNVMESelfTestLog, 1); # 964|-> switch (self_test_log->current_operation & NVME_ST_CURR_OP_MASK) { # 965| case NVME_ST_CURR_OP_NOT_RUNNING: # 966| log->current_operation = BD_NVME_SELF_TEST_ACTION_NOT_RUNNING; Error: GCC_ANALYZER_WARNING (CWE-476): [#def13] libblockdev-3.3.0/src/plugins/nvme/nvme-info.c:1109:5: warning[-Wanalyzer-null-dereference]: dereference of NULL '0' libblockdev-3.3.0/src/plugins/nvme/nvme-info.c:1082:21: enter_function: entry to 'bd_nvme_get_sanitize_log' libblockdev-3.3.0/src/plugins/nvme/nvme-info.c:1090:10: call_function: calling '_open_dev' from 'bd_nvme_get_sanitize_log' libblockdev-3.3.0/src/plugins/nvme/nvme-info.c:1090:10: return_function: returning to 'bd_nvme_get_sanitize_log' from '_open_dev' libblockdev-3.3.0/src/plugins/nvme/nvme-info.c:1091:8: branch_false: following 'false' branch... libblockdev-3.3.0/src/plugins/nvme/nvme-info.c:1095:20: branch_false: ...to here libblockdev-3.3.0/src/plugins/nvme/nvme-info.c:1095:20: call_function: calling '_nvme_alloc' from 'bd_nvme_get_sanitize_log' libblockdev-3.3.0/src/plugins/nvme/nvme-info.c:1095:20: return_function: returning to 'bd_nvme_get_sanitize_log' from '_nvme_alloc' libblockdev-3.3.0/src/plugins/nvme/nvme-info.c:1096:5: branch_false: following 'false' branch... libblockdev-3.3.0/src/plugins/nvme/nvme-info.c:1096:5: branch_false: ...to here libblockdev-3.3.0/src/plugins/nvme/nvme-info.c:1098:8: branch_false: following 'false' branch... libblockdev-3.3.0/src/plugins/nvme/nvme-info.c:1105:5: branch_false: ...to here libblockdev-3.3.0/src/plugins/nvme/nvme-info.c:1109:5: danger: dereference of NULL '_nvme_alloc(512)' # 1107| log = g_new0 (BDNVMESanitizeLog, 1); # 1108| log->sanitize_progress = 0; # 1109|-> sstat = GUINT16_FROM_LE (sanitize_log->sstat); # 1110| if ((sstat & NVME_SANITIZE_SSTAT_STATUS_MASK) == NVME_SANITIZE_SSTAT_STATUS_IN_PROGESS) # 1111| log->sanitize_progress = ((gdouble) GUINT16_FROM_LE (sanitize_log->sprog) * 100) / 0x10000; Error: GCC_ANALYZER_WARNING (CWE-476): [#def14] libblockdev-3.3.0/src/plugins/part.c:1367:48: warning[-Wanalyzer-null-dereference]: dereference of NULL 'l_error' libblockdev-3.3.0/src/plugins/part.c:1352:10: enter_function: entry to 'bd_part_delete_part' libblockdev-3.3.0/src/plugins/part.c:1359:13: release_memory: 'l_error' is NULL libblockdev-3.3.0/src/plugins/part.c:1365:16: call_function: calling 'get_part_num' from 'bd_part_delete_part' libblockdev-3.3.0/src/plugins/part.c:1365:16: return_function: returning to 'bd_part_delete_part' from 'get_part_num' libblockdev-3.3.0/src/plugins/part.c:1366:8: branch_true: following 'true' branch... libblockdev-3.3.0/src/plugins/part.c:1367:55: branch_true: ...to here libblockdev-3.3.0/src/plugins/part.c:1367:55: release_memory: 'l_error' is NULL libblockdev-3.3.0/src/plugins/part.c:1368:9: release_memory: 'l_error' is NULL libblockdev-3.3.0/src/plugins/part.c:1367:48: danger: dereference of NULL 'l_error' # 1365| part_num = get_part_num (part, &l_error); # 1366| if (part_num == -1) { # 1367|-> bd_utils_report_finished (progress_id, l_error->message); # 1368| g_propagate_error (error, l_error); # 1369| return FALSE; Error: GCC_ANALYZER_WARNING (CWE-476): [#def15] libblockdev-3.3.0/src/plugins/part.c:1529:48: warning[-Wanalyzer-null-dereference]: dereference of NULL 'l_error' libblockdev-3.3.0/src/plugins/part.c:1506:10: enter_function: entry to 'bd_part_resize_part' libblockdev-3.3.0/src/plugins/part.c:1521:13: release_memory: 'l_error' is NULL libblockdev-3.3.0/src/plugins/part.c:1527:16: call_function: calling 'get_part_num' from 'bd_part_resize_part' libblockdev-3.3.0/src/plugins/part.c:1527:16: return_function: returning to 'bd_part_resize_part' from 'get_part_num' libblockdev-3.3.0/src/plugins/part.c:1528:8: branch_true: following 'true' branch... libblockdev-3.3.0/src/plugins/part.c:1529:55: branch_true: ...to here libblockdev-3.3.0/src/plugins/part.c:1529:55: release_memory: 'l_error' is NULL libblockdev-3.3.0/src/plugins/part.c:1530:9: release_memory: 'l_error' is NULL libblockdev-3.3.0/src/plugins/part.c:1529:48: danger: dereference of NULL 'l_error' # 1527| part_num = get_part_num (part, &l_error); # 1528| if (part_num == -1) { # 1529|-> bd_utils_report_finished (progress_id, l_error->message); # 1530| g_propagate_error (error, l_error); # 1531| return FALSE; Error: GCC_ANALYZER_WARNING (CWE-476): [#def16] libblockdev-3.3.0/src/plugins/part.c:1845:48: warning[-Wanalyzer-null-dereference]: dereference of NULL 'l_error' libblockdev-3.3.0/src/plugins/part.c:1800:10: enter_function: entry to 'bd_part_set_part_name' libblockdev-3.3.0/src/plugins/part.c:1809:13: release_memory: 'l_error' is NULL libblockdev-3.3.0/src/plugins/part.c:1815:11: call_function: calling 'get_device_context' from 'bd_part_set_part_name' libblockdev-3.3.0/src/plugins/part.c:1815:11: return_function: returning to 'bd_part_set_part_name' from 'get_device_context' libblockdev-3.3.0/src/plugins/part.c:1816:8: branch_false: following 'false' branch... libblockdev-3.3.0/src/plugins/part.c:1821:10: branch_false: ...to here libblockdev-3.3.0/src/plugins/part.c:1822:8: branch_false: following 'false' branch... libblockdev-3.3.0/src/plugins/part.c:1831:18: branch_false: ...to here libblockdev-3.3.0/src/plugins/part.c:1832:8: branch_false: following 'false' branch... libblockdev-3.3.0/src/plugins/part.c:1842:16: branch_false: ...to here libblockdev-3.3.0/src/plugins/part.c:1842:16: call_function: calling 'get_part_num' from 'bd_part_set_part_name' libblockdev-3.3.0/src/plugins/part.c:1842:16: return_function: returning to 'bd_part_set_part_name' from 'get_part_num' libblockdev-3.3.0/src/plugins/part.c:1843:8: branch_true: following 'true' branch... libblockdev-3.3.0/src/plugins/part.c:1844:9: branch_true: ...to here libblockdev-3.3.0/src/plugins/part.c:1845:55: release_memory: 'l_error' is NULL libblockdev-3.3.0/src/plugins/part.c:1846:9: release_memory: 'l_error' is NULL libblockdev-3.3.0/src/plugins/part.c:1845:48: danger: dereference of NULL 'l_error' # 1843| if (part_num == -1) { # 1844| close_context (cxt); # 1845|-> bd_utils_report_finished (progress_id, l_error->message); # 1846| g_propagate_error (error, l_error); # 1847| return FALSE; Error: GCC_ANALYZER_WARNING (CWE-476): [#def17] libblockdev-3.3.0/src/plugins/part.c:1926:48: warning[-Wanalyzer-null-dereference]: dereference of NULL 'l_error' libblockdev-3.3.0/src/plugins/part.c:1913:10: enter_function: entry to 'bd_part_set_part_type' libblockdev-3.3.0/src/plugins/part.c:1918:13: release_memory: 'l_error' is NULL libblockdev-3.3.0/src/plugins/part.c:1924:16: call_function: calling 'get_part_num' from 'bd_part_set_part_type' libblockdev-3.3.0/src/plugins/part.c:1924:16: return_function: returning to 'bd_part_set_part_type' from 'get_part_num' libblockdev-3.3.0/src/plugins/part.c:1925:8: branch_true: following 'true' branch... libblockdev-3.3.0/src/plugins/part.c:1926:55: branch_true: ...to here libblockdev-3.3.0/src/plugins/part.c:1926:55: release_memory: 'l_error' is NULL libblockdev-3.3.0/src/plugins/part.c:1927:9: release_memory: 'l_error' is NULL libblockdev-3.3.0/src/plugins/part.c:1926:48: danger: dereference of NULL 'l_error' # 1924| part_num = get_part_num (part, &l_error); # 1925| if (part_num == -1) { # 1926|-> bd_utils_report_finished (progress_id, l_error->message); # 1927| g_propagate_error (error, l_error); # 1928| return FALSE; Error: GCC_ANALYZER_WARNING (CWE-476): [#def18] libblockdev-3.3.0/src/plugins/part.c:1985:48: warning[-Wanalyzer-null-dereference]: dereference of NULL 'l_error' libblockdev-3.3.0/src/plugins/part.c:1972:10: enter_function: entry to 'bd_part_set_part_id' libblockdev-3.3.0/src/plugins/part.c:1977:13: release_memory: 'l_error' is NULL libblockdev-3.3.0/src/plugins/part.c:1983:16: call_function: calling 'get_part_num' from 'bd_part_set_part_id' libblockdev-3.3.0/src/plugins/part.c:1983:16: return_function: returning to 'bd_part_set_part_id' from 'get_part_num' libblockdev-3.3.0/src/plugins/part.c:1984:8: branch_true: following 'true' branch... libblockdev-3.3.0/src/plugins/part.c:1985:55: branch_true: ...to here libblockdev-3.3.0/src/plugins/part.c:1985:55: release_memory: 'l_error' is NULL libblockdev-3.3.0/src/plugins/part.c:1986:9: release_memory: 'l_error' is NULL libblockdev-3.3.0/src/plugins/part.c:1985:48: danger: dereference of NULL 'l_error' # 1983| part_num = get_part_num (part, &l_error); # 1984| if (part_num == -1) { # 1985|-> bd_utils_report_finished (progress_id, l_error->message); # 1986| g_propagate_error (error, l_error); # 1987| return FALSE; Error: GCC_ANALYZER_WARNING (CWE-476): [#def19] libblockdev-3.3.0/src/plugins/part.c:2076:48: warning[-Wanalyzer-null-dereference]: dereference of NULL 'l_error' libblockdev-3.3.0/src/plugins/part.c:2031:10: enter_function: entry to 'bd_part_set_part_uuid' libblockdev-3.3.0/src/plugins/part.c:2040:13: release_memory: 'l_error' is NULL libblockdev-3.3.0/src/plugins/part.c:2046:11: call_function: calling 'get_device_context' from 'bd_part_set_part_uuid' libblockdev-3.3.0/src/plugins/part.c:2046:11: return_function: returning to 'bd_part_set_part_uuid' from 'get_device_context' libblockdev-3.3.0/src/plugins/part.c:2047:8: branch_false: following 'false' branch... libblockdev-3.3.0/src/plugins/part.c:2052:10: branch_false: ...to here libblockdev-3.3.0/src/plugins/part.c:2053:8: branch_false: following 'false' branch... libblockdev-3.3.0/src/plugins/part.c:2062:18: branch_false: ...to here libblockdev-3.3.0/src/plugins/part.c:2063:8: branch_false: following 'false' branch... libblockdev-3.3.0/src/plugins/part.c:2073:16: branch_false: ...to here libblockdev-3.3.0/src/plugins/part.c:2073:16: call_function: calling 'get_part_num' from 'bd_part_set_part_uuid' libblockdev-3.3.0/src/plugins/part.c:2073:16: return_function: returning to 'bd_part_set_part_uuid' from 'get_part_num' libblockdev-3.3.0/src/plugins/part.c:2074:8: branch_true: following 'true' branch... libblockdev-3.3.0/src/plugins/part.c:2075:9: branch_true: ...to here libblockdev-3.3.0/src/plugins/part.c:2076:55: release_memory: 'l_error' is NULL libblockdev-3.3.0/src/plugins/part.c:2077:9: release_memory: 'l_error' is NULL libblockdev-3.3.0/src/plugins/part.c:2076:48: danger: dereference of NULL 'l_error' # 2074| if (part_num == -1) { # 2075| close_context (cxt); # 2076|-> bd_utils_report_finished (progress_id, l_error->message); # 2077| g_propagate_error (error, l_error); # 2078| return FALSE;
analyzer-version-clippy | 1.86.0 |
analyzer-version-cppcheck | 2.17.1 |
analyzer-version-gcc | 15.0.1 |
analyzer-version-gcc-analyzer | 15.0.1 |
analyzer-version-shellcheck | 0.10.0 |
analyzer-version-unicontrol | 0.0.2 |
enabled-plugins | clippy, cppcheck, gcc, shellcheck, unicontrol |
exit-code | 0 |
host | ip-172-16-1-195.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.20250425.124705.g1c7c448.main-1.el9.noarch |
mock-config | fedora-rawhide-x86_64 |
project-name | libblockdev-3.3.0-3.fc43 |
store-results-to | /tmp/tmpm93munw2/libblockdev-3.3.0-3.fc43.tar.xz |
time-created | 2025-04-25 13:54:31 |
time-finished | 2025-04-25 13:57:17 |
tool | csmock |
tool-args | '/usr/bin/csmock' '-r' 'fedora-rawhide-x86_64' '-t' 'unicontrol,cppcheck,gcc,clippy,shellcheck' '-o' '/tmp/tmpm93munw2/libblockdev-3.3.0-3.fc43.tar.xz' '--gcc-analyze' '--unicontrol-notests' '--unicontrol-bidi-only' '--install' 'pam' '--gcc-analyzer-bin=/usr/bin/gcc' '/tmp/tmpm93munw2/libblockdev-3.3.0-3.fc43.src.rpm' |
tool-version | csmock-3.8.1.20250422.172604.g26bc3d6-1.el9 |