Newly introduced findings

List of Findings

Error: GCC_ANALYZER_WARNING (CWE-457): [#def1]
NetworkManager-1.55.91/src/libnm-glib-aux/nm-macros-internal.h:79:1: warning[-Wanalyzer-use-of-uninitialized-value]: use of uninitialized value ‘newstr’
NetworkManager-1.55.91/src/libnm-client-aux-extern/tests/test-libnm-client-aux.c:419:17: branch_true: following ‘true’ branch (when ‘i != 20’)...
NetworkManager-1.55.91/src/libnm-client-aux-extern/tests/test-libnm-client-aux.c:421:47: branch_true: ...to here
NetworkManager-1.55.91/src/libnm-client-aux-extern/tests/test-libnm-client-aux.c:425:16: throw: if ‘_nm_utils_wireguard_peer_from_string’ throws an exception...
NetworkManager-1.55.91/src/libnm-client-aux-extern/tests/test-libnm-client-aux.c:422:47: call_function: inlined call to ‘_nm_auto_g_free’ from ‘test_wireguard_peer’
#   77|   /*****************************************************************************/
#   78|   
#   79|-> NM_AUTO_DEFINE_FCN_VOID0(void *, _nm_auto_g_free, g_free);
#   80|   #define nm_auto_g_free nm_auto(_nm_auto_g_free)
#   81|   

Error: GCC_ANALYZER_WARNING (CWE-457): [#def2]
NetworkManager-1.55.91/src/libnm-glib-aux/nm-macros-internal.h:100:1: warning[-Wanalyzer-use-of-uninitialized-value]: use of uninitialized value ‘output’
NetworkManager-1.55.91/src/core/nm-core-utils.c:5704:1: enter_function: entry to ‘read_file_helper_cb’
NetworkManager-1.55.91/src/core/nm-core-utils.c:5711:14: call_function: calling ‘nm_utils_spawn_helper_finish_binary’ from ‘read_file_helper_cb’
NetworkManager-1.55.91/src/core/nm-core-utils.c:5709:28: call_function: inlined call to ‘_nm_auto_free_error’ from ‘read_file_helper_cb’
NetworkManager-1.55.91/src/core/nm-core-utils.c:5708:28: call_function: inlined call to ‘_nm_auto_unref_bytes’ from ‘read_file_helper_cb’
#   98|   #define nm_auto_free_slist nm_auto(_nm_auto_free_slist)
#   99|   
#  100|-> NM_AUTO_DEFINE_FCN0(GBytes *, _nm_auto_unref_bytes, g_bytes_unref);
#  101|   #define nm_auto_unref_bytes nm_auto(_nm_auto_unref_bytes)
#  102|   

Error: GCC_ANALYZER_WARNING (CWE-457): [#def3]
NetworkManager-1.55.91/src/libnm-glib-aux/nm-macros-internal.h:103:1: warning[-Wanalyzer-use-of-uninitialized-value]: use of uninitialized value ‘ips’
NetworkManager-1.55.91/src/libnm-core-aux-extern/nm-libnm-core-aux.c:543:17: branch_true: following ‘true’ branch...
NetworkManager-1.55.91/src/libnm-core-aux-extern/nm-libnm-core-aux.c:544:12: branch_true: ...to here
NetworkManager-1.55.91/src/libnm-core-aux-extern/nm-libnm-core-aux.c:544:12: branch_true: following ‘true’ branch (when ‘i == 0’)...
NetworkManager-1.55.91/src/libnm-core-aux-extern/nm-libnm-core-aux.c:545:18: branch_true: ...to here
NetworkManager-1.55.91/src/libnm-core-aux-extern/nm-libnm-core-aux.c:545:16: branch_false: following ‘false’ branch...
NetworkManager-1.55.91/src/libnm-core-aux-extern/nm-libnm-core-aux.c:544:12: branch_false: ...to here
NetworkManager-1.55.91/src/libnm-core-aux-extern/nm-libnm-core-aux.c:543:17: branch_true: following ‘true’ branch...
NetworkManager-1.55.91/src/libnm-core-aux-extern/nm-libnm-core-aux.c:544:12: branch_true: ...to here
NetworkManager-1.55.91/src/libnm-core-aux-extern/nm-libnm-core-aux.c:560:12: branch_false: following ‘false’ branch...
NetworkManager-1.55.91/src/libnm-core-aux-extern/nm-libnm-core-aux.c:576:19: throw: if ‘g_strsplit_set’ throws an exception...
NetworkManager-1.55.91/src/libnm-core-aux-extern/nm-libnm-core-aux.c:573:32: call_function: inlined call to ‘_nm_auto_strfreev’ from ‘_nm_utils_wireguard_peer_from_string’
#  101|   #define nm_auto_unref_bytes nm_auto(_nm_auto_unref_bytes)
#  102|   
#  103|-> NM_AUTO_DEFINE_FCN0(char **, _nm_auto_strfreev, g_strfreev);
#  104|   #define nm_auto_strfreev nm_auto(_nm_auto_strfreev)
#  105|   

Error: GCC_ANALYZER_WARNING (CWE-688): [#def4]
NetworkManager-1.55.91/src/libnm-glib-aux/nm-str-buf.h:256:9: warning[-Wanalyzer-null-argument]: use of NULL ‘commands’ where non-null expected
NetworkManager-1.55.91/src/core/nm-core-utils.c:5783:1: enter_function: entry to ‘nm_utils_read_private_files’
NetworkManager-1.55.91/src/core/nm-core-utils.c:5793:5: branch_true: following ‘true’ branch...
NetworkManager-1.55.91/src/core/nm-core-utils.c:5794:5: branch_true: following ‘true’ branch (when ‘cancellable’ is non-NULL)...
NetworkManager-1.55.91/src/core/nm-core-utils.c:5795:5: branch_true: ...to here
NetworkManager-1.55.91/src/core/nm-core-utils.c:5795:5: branch_true: following ‘true’ branch (when ‘callback’ is non-NULL)...
NetworkManager-1.55.91/src/core/nm-core-utils.c:5796:5: branch_true: ...to here
NetworkManager-1.55.91/src/core/nm-core-utils.c:5796:5: branch_true: following ‘true’ branch (when ‘cb_data’ is non-NULL)...
NetworkManager-1.55.91/src/core/nm-core-utils.c:5798:18: branch_true: ...to here
NetworkManager-1.55.91/src/core/nm-core-utils.c:5804:17: branch_true: following ‘true’ branch...
NetworkManager-1.55.91/src/core/nm-core-utils.c:5805:22: branch_true: ...to here
NetworkManager-1.55.91/src/core/nm-core-utils.c:5813:9: call_function: calling ‘nm_utils_spawn_helper’ from ‘nm_utils_read_private_files’
#  254|       if (len > 0) {
#  255|           nm_str_buf_maybe_expand(strbuf, len + 1, FALSE);
#  256|->         memcpy(&strbuf->_priv_str[strbuf->_priv_len], str, len);
#  257|           strbuf->_priv_len += len;
#  258|       }

Error: GCC_ANALYZER_WARNING (CWE-775): [#def5]
NetworkManager-1.55.91/src/libnm-std-aux/nm-std-aux.h:1238:8: warning[-Wanalyzer-fd-leak]: leak of file descriptor ‘open(filename, 0)’
NetworkManager-1.55.91/src/libnm-std-aux/nm-std-utils.c:172:10: acquire_resource: opened here
NetworkManager-1.55.91/src/libnm-std-aux/nm-std-utils.c:173:8: branch_false: following ‘false’ branch...
NetworkManager-1.55.91/src/libnm-std-aux/nm-std-utils.c:173:8: branch_false: ...to here
NetworkManager-1.55.91/src/libnm-std-aux/nm-std-utils.c:166:23: call_function: inlined call to ‘_nm_auto_close’ from ‘nm_utils_read_file_to_stdout’
# 1236|   _nm_auto_close(int *pfd)
# 1237|   {
# 1238|->     if (*pfd >= 0)
# 1239|           nm_close(*pfd);
# 1240|   }

Error: GCC_ANALYZER_WARNING (CWE-457): [#def6]
NetworkManager-1.55.91/src/libnm-systemd-shared/src/basic/alloc-util.h:108:22: warning[-Wanalyzer-use-of-uninitialized-value]: use of uninitialized value ‘subsystem’
NetworkManager-1.55.91/src/libnm-systemd-core/src/libsystemd/sd-device/sd-device.c:2081:5: enter_function: entry to ‘device_properties_prepare’
NetworkManager-1.55.91/src/libnm-systemd-core/src/libsystemd/sd-device/sd-device.c:2084:9: branch_false: following ‘false’ branch...
NetworkManager-1.55.91/src/libnm-systemd-core/src/libsystemd/sd-device/sd-device.c:2086:13: branch_false: ...to here
NetworkManager-1.55.91/src/libnm-systemd-core/src/libsystemd/sd-device/sd-device.c:2086:13: call_function: calling ‘device_read_uevent_file’ from ‘device_properties_prepare’
#  106|   
#  107|   static inline void freep(void *p) {
#  108|->         *(void**)p = mfree(*(void**) p);
#  109|   }
#  110|   

Error: GCC_ANALYZER_WARNING (CWE-401): [#def7]
NetworkManager-1.55.91/src/libnm-systemd-shared/src/basic/fs-util.c:1016:35: warning[-Wanalyzer-malloc-leak]: leak of ‘strdup(d + strspn(d, & <Udbe0>))’
NetworkManager-1.55.91/src/libnm-systemd-shared/src/basic/fs-util.c:963:5: enter_function: entry to ‘parse_cifs_service’
NetworkManager-1.55.91/src/libnm-systemd-shared/src/basic/fs-util.c:977:12: branch_false: following ‘false’ branch (when ‘s’ is non-NULL)...
NetworkManager-1.55.91/src/libnm-systemd-shared/src/basic/fs-util.c:980:13: branch_false: ...to here
NetworkManager-1.55.91/src/libnm-systemd-shared/src/basic/fs-util.c:989:12: branch_false: following ‘false’ branch (when ‘e’ is non-NULL)...
NetworkManager-1.55.91/src/libnm-systemd-shared/src/basic/fs-util.c:992:24: branch_false: ...to here
NetworkManager-1.55.91/src/libnm-systemd-shared/src/basic/fs-util.c:993:12: branch_false: following ‘false’ branch...
NetworkManager-1.55.91/src/libnm-systemd-shared/src/basic/fs-util.c:996:14: branch_false: ...to here
NetworkManager-1.55.91/src/libnm-systemd-shared/src/basic/fs-util.c:996:12: branch_true: following ‘true’ branch...
NetworkManager-1.55.91/src/libnm-systemd-shared/src/basic/fs-util.c:999:9: branch_true: ...to here
NetworkManager-1.55.91/src/libnm-systemd-shared/src/basic/fs-util.c:1004:12: branch_false: following ‘false’ branch...
NetworkManager-1.55.91/src/libnm-systemd-shared/src/basic/fs-util.c:1007:14: branch_false: ...to here
NetworkManager-1.55.91/src/libnm-systemd-shared/src/basic/fs-util.c:1007:12: branch_true: following ‘true’ branch...
NetworkManager-1.55.91/src/libnm-systemd-shared/src/basic/fs-util.c:1010:14: call_function: inlined call to ‘isempty’ from ‘parse_cifs_service’
NetworkManager-1.55.91/src/libnm-systemd-shared/src/basic/fs-util.c:1011:21: acquire_memory: allocated here
NetworkManager-1.55.91/src/libnm-systemd-shared/src/basic/fs-util.c:1012:20: branch_false: following ‘false’ branch...
NetworkManager-1.55.91/src/libnm-systemd-shared/src/basic/fs-util.c:1012:20: branch_false: ...to here
NetworkManager-1.55.91/src/libnm-systemd-shared/src/basic/fs-util.c:1016:35: branch_true: following ‘true’ branch...
NetworkManager-1.55.91/src/libnm-systemd-shared/src/basic/fs-util.c:1017:28: branch_true: ...to here
NetworkManager-1.55.91/src/libnm-systemd-shared/src/basic/fs-util.c:1016:35: branch_true: following ‘true’ branch...
NetworkManager-1.55.91/src/libnm-systemd-shared/src/basic/fs-util.c:1017:28: branch_true: ...to here
NetworkManager-1.55.91/src/libnm-systemd-shared/src/basic/fs-util.c:1016:35: branch_true: following ‘true’ branch...
NetworkManager-1.55.91/src/libnm-systemd-shared/src/basic/fs-util.c:1017:28: branch_true: ...to here
NetworkManager-1.55.91/src/libnm-systemd-shared/src/basic/fs-util.c:1020:20: branch_true: following ‘true’ branch...
NetworkManager-1.55.91/src/libnm-systemd-shared/src/basic/fs-util.c:1023:17: call_function: inlined call to ‘path_simplify’ from ‘parse_cifs_service’
NetworkManager-1.55.91/src/libnm-systemd-shared/src/basic/fs-util.c:1016:35: danger: ‘strdup(d + strspn(d, & <Udbe0>))’ leaks here; was allocated at [(18)](sarif:/runs/0/results/10/codeFlows/0/threadFlows/0/locations/17)
# 1014|   
# 1015|                   /* Make sure to convert Windows-style "\" → Unix-style / */
# 1016|->                 for (char *i = x; *i; i++)
# 1017|                           if (*i == delimiter)
# 1018|                                   *i = '/';

Error: GCC_ANALYZER_WARNING (CWE-401): [#def8]
NetworkManager-1.55.91/src/libnm-systemd-shared/src/basic/hashmap.c:388:16: warning[-Wanalyzer-malloc-leak]: leak of ‘p’
NetworkManager-1.55.91/src/libnm-systemd-shared/src/basic/hashmap.c:1809:8: enter_function: entry to ‘set_to_strv’
NetworkManager-1.55.91/src/libnm-systemd-shared/src/basic/hashmap.c:1810:9: branch_false: following ‘false’ branch...
NetworkManager-1.55.91/src/libnm-systemd-shared/src/basic/hashmap.c:1814:20: branch_false: ...to here
NetworkManager-1.55.91/src/libnm-systemd-shared/src/basic/hashmap.c:1814:20: call_function: calling ‘malloc_multiply’ from ‘set_to_strv’
NetworkManager-1.55.91/src/libnm-systemd-shared/src/basic/hashmap.c:1814:20: return_function: returning to ‘set_to_strv’ from ‘malloc_multiply’
NetworkManager-1.55.91/src/libnm-systemd-shared/src/basic/hashmap.c:1815:12: branch_false: following ‘false’ branch...
NetworkManager-1.55.91/src/libnm-systemd-shared/src/basic/hashmap.c:1815:12: branch_false: ...to here
NetworkManager-1.55.91/src/libnm-systemd-shared/src/basic/hashmap.c:1818:34: call_function: inlined call to ‘set_steal_first’ from ‘set_to_strv’
#  386|   
#  387|   static struct hashmap_base_entry* bucket_at(HashmapBase *h, unsigned idx) {
#  388|->         return CAST_ALIGN_PTR(
#  389|                           struct hashmap_base_entry,
#  390|                           (uint8_t *) storage_ptr(h) + idx * hashmap_type_info[h->type].entry_size);

Scan Properties

analyzer-version-clippy1.92.0
analyzer-version-cppcheck2.19.1
analyzer-version-gcc16.0.0
analyzer-version-gcc-analyzer16.0.0
analyzer-version-shellcheck0.11.0
analyzer-version-unicontrol0.0.2
diffbase-analyzer-version-clippy1.92.0
diffbase-analyzer-version-cppcheck2.19.1
diffbase-analyzer-version-gcc16.0.0
diffbase-analyzer-version-gcc-analyzer16.0.0
diffbase-analyzer-version-shellcheck0.11.0
diffbase-analyzer-version-unicontrol0.0.2
diffbase-enabled-pluginsclippy, cppcheck, gcc, shellcheck, unicontrol
diffbase-exit-code0
diffbase-hostip-172-16-1-157.us-west-2.compute.internal
diffbase-known-false-positives/usr/share/csmock/known-false-positives.js
diffbase-known-false-positives-rpmknown-false-positives-0.0.0.20250521.132812.g8eff701.main-1.el9.noarch
diffbase-mock-configfedora-rawhide-x86_64
diffbase-project-nameNetworkManager-1.54.0-2.fc43
diffbase-store-results-to/tmp/tmpm79was9s/NetworkManager-1.54.0-2.fc43.tar.xz
diffbase-time-created2026-01-08 15:18:24
diffbase-time-finished2026-01-08 15:38:34
diffbase-toolcsmock
diffbase-tool-args'/usr/bin/csmock' '-r' 'fedora-rawhide-x86_64' '-t' 'gcc,cppcheck,clippy,shellcheck,unicontrol' '-o' '/tmp/tmpm79was9s/NetworkManager-1.54.0-2.fc43.tar.xz' '--gcc-analyze' '--unicontrol-notests' '--unicontrol-bidi-only' '--install' 'pam' '--gcc-analyzer-bin=/usr/bin/gcc' '/tmp/tmpm79was9s/NetworkManager-1.54.0-2.fc43.src.rpm'
diffbase-tool-versioncsmock-3.8.3.20251215.161544.g62de9a5-1.el9
enabled-pluginsclippy, cppcheck, gcc, shellcheck, unicontrol
exit-code0
hostip-172-16-1-157.us-west-2.compute.internal
known-false-positives/usr/share/csmock/known-false-positives.js
known-false-positives-rpmknown-false-positives-0.0.0.20250521.132812.g8eff701.main-1.el9.noarch
mock-configfedora-rawhide-x86_64
project-nameNetworkManager-1.55.91-1.fc44
store-results-to/tmp/tmpx03zz9rf/NetworkManager-1.55.91-1.fc44.tar.xz
time-created2026-01-08 15:39:37
time-finished2026-01-08 16:00:12
titleNewly introduced findings
toolcsmock
tool-args'/usr/bin/csmock' '-r' 'fedora-rawhide-x86_64' '-t' 'gcc,cppcheck,clippy,shellcheck,unicontrol' '-o' '/tmp/tmpx03zz9rf/NetworkManager-1.55.91-1.fc44.tar.xz' '--gcc-analyze' '--unicontrol-notests' '--unicontrol-bidi-only' '--install' 'pam' '--gcc-analyzer-bin=/usr/bin/gcc' '/tmp/tmpx03zz9rf/NetworkManager-1.55.91-1.fc44.src.rpm'
tool-versioncsmock-3.8.3.20251215.161544.g62de9a5-1.el9