Error: GCC_ANALYZER_WARNING (CWE-404): [#def1] libei-1.5.0/src/brei-shared.c:163:17: warning[-Wanalyzer-va-list-leak]: missing call to ‘va_end’ libei-1.5.0/src/brei-shared.c:168:1: enter_function: entry to ‘brei_log_msg’ libei-1.5.0/src/brei-shared.c:174:9: acquire_resource: ‘va_start’ called here libei-1.5.0/src/brei-shared.c:175:9: call_function: calling ‘brei_log_msg_va’ from ‘brei_log_msg’ # 161| { # 162| if (brei->log_func && brei->log_context) # 163|-> brei->log_func(brei->log_context, priority, file, lineno, func, format, ap); # 164| } # 165| Error: GCC_ANALYZER_WARNING (CWE-122): [#def2] libei-1.5.0/src/brei-shared.c:241:37: warning[-Wanalyzer-out-of-bounds]: heap-based buffer over-read libei-1.5.0/src/brei-shared.c:180:1: enter_function: entry to ‘brei_demarshal’ libei-1.5.0/src/brei-shared.c:184:12: branch_false: following ‘false’ branch (when ‘nargs <= 256’)... libei-1.5.0/src/brei-shared.c:190:54: branch_false: ...to here libei-1.5.0/src/brei-shared.c:190:47: call_function: calling ‘xalloc’ from ‘brei_demarshal’ libei-1.5.0/src/brei-shared.c:190:47: return_function: returning to ‘brei_demarshal’ from ‘xalloc’ libei-1.5.0/src/brei-shared.c:193:48: call_function: calling ‘xalloc’ from ‘brei_demarshal’ libei-1.5.0/src/brei-shared.c:193:48: return_function: returning to ‘brei_demarshal’ from ‘xalloc’ libei-1.5.0/src/brei-shared.c:202:16: branch_true: following ‘true’ branch... libei-1.5.0/src/brei-shared.c:203:17: branch_true: ...to here libei-1.5.0/src/brei-shared.c:230:28: branch_false: following ‘false’ branch (when ‘remaining >= len32’)... libei-1.5.0/src/brei-shared.c:236:28: branch_false: ...to here libei-1.5.0/src/brei-shared.c:236:28: branch_false: following ‘false’ branch (when ‘slen != 0’)... libei-1.5.0/src/brei-shared.c:239:60: branch_false: ...to here libei-1.5.0/src/brei-shared.c:239:60: call_function: calling ‘xalloc’ from ‘brei_demarshal’ libei-1.5.0/src/brei-shared.c:239:60: return_function: returning to ‘brei_demarshal’ from ‘xalloc’ libei-1.5.0/src/brei-shared.c:241:37: danger: read of 1 byte at offset ‘(sizetype)(*p + 4294967295)’ exceeds the buffer # 239| _cleanup_free_ char *str = xalloc(slen); # 240| memcpy(str, p + 1, slen); # 241|-> if (str[slen - 1] != '\0') { # 242| return brei_result_new(BREI_CONNECTION_DISCONNECT_REASON_PROTOCOL, # 243| "Message string not zero-terminated"); Error: GCC_ANALYZER_WARNING (CWE-401): [#def3] libei-1.5.0/src/brei-shared.c:432:26: warning[-Wanalyzer-malloc-leak]: leak of ‘args’ libei-1.5.0/src/brei-shared.c:354:1: enter_function: entry to ‘brei_dispatch’ libei-1.5.0/src/brei-shared.c:362:12: branch_false: following ‘false’ branch... libei-1.5.0/src/brei-shared.c:364:19: branch_false: ...to here libei-1.5.0/src/brei-shared.c:364:19: branch_false: following ‘false’ branch... libei-1.5.0/src/brei-shared.c:367:19: branch_false: ...to here libei-1.5.0/src/brei-shared.c:367:19: branch_false: following ‘false’ branch... branch_false: ...to here libei-1.5.0/src/brei-shared.c:378:20: branch_false: following ‘false’ branch... libei-1.5.0/src/brei-shared.c:382:26: branch_false: ...to here libei-1.5.0/src/brei-shared.c:384:20: branch_false: following ‘false’ branch... libei-1.5.0/src/brei-shared.c:387:29: branch_false: ...to here libei-1.5.0/src/brei-shared.c:397:20: branch_false: following ‘false’ branch... libei-1.5.0/src/brei-shared.c:403:17: branch_false: ...to here libei-1.5.0/src/brei-shared.c:403:17: branch_true: following ‘true’ branch... libei-1.5.0/src/brei-shared.c:407:46: branch_true: ...to here libei-1.5.0/src/brei-shared.c:408:17: branch_true: following ‘true’ branch (when ‘interface’ is non-NULL)... libei-1.5.0/src/brei-shared.c:410:31: branch_true: ...to here libei-1.5.0/src/brei-shared.c:410:20: branch_false: following ‘false’ branch... libei-1.5.0/src/brei-shared.c:417:17: branch_false: ...to here libei-1.5.0/src/brei-shared.c:424:26: call_function: calling ‘brei_demarshal’ from ‘brei_dispatch’ libei-1.5.0/src/brei-shared.c:424:26: return_function: returning to ‘brei_dispatch’ from ‘brei_demarshal’ libei-1.5.0/src/brei-shared.c:425:20: branch_false: following ‘false’ branch... libei-1.5.0/src/brei-shared.c:428:17: branch_false: ...to here libei-1.5.0/src/brei-shared.c:432:26: danger: ‘args’ leaks here; was allocated at [(28)](sarif:/runs/0/results/6/codeFlows/0/threadFlows/0/locations/27) # 430| /* Success! Let's pass this on to the # 431| * context to process */ # 432|-> result = interface->dispatcher(object->implementation, opcode, nargs, args); # 433| if (result) # 434| goto error; Error: GCC_ANALYZER_WARNING (CWE-401): [#def4] libei-1.5.0/src/brei-shared.c:432:26: warning[-Wanalyzer-malloc-leak]: leak of ‘strings’ libei-1.5.0/src/brei-shared.c:354:1: enter_function: entry to ‘brei_dispatch’ libei-1.5.0/src/brei-shared.c:362:12: branch_false: following ‘false’ branch... libei-1.5.0/src/brei-shared.c:364:19: branch_false: ...to here libei-1.5.0/src/brei-shared.c:364:19: branch_false: following ‘false’ branch... libei-1.5.0/src/brei-shared.c:367:19: branch_false: ...to here libei-1.5.0/src/brei-shared.c:367:19: branch_false: following ‘false’ branch... branch_false: ...to here libei-1.5.0/src/brei-shared.c:378:20: branch_false: following ‘false’ branch... libei-1.5.0/src/brei-shared.c:382:26: branch_false: ...to here libei-1.5.0/src/brei-shared.c:384:20: branch_false: following ‘false’ branch... libei-1.5.0/src/brei-shared.c:387:29: branch_false: ...to here libei-1.5.0/src/brei-shared.c:397:20: branch_false: following ‘false’ branch... libei-1.5.0/src/brei-shared.c:403:17: branch_false: ...to here libei-1.5.0/src/brei-shared.c:403:17: branch_true: following ‘true’ branch... libei-1.5.0/src/brei-shared.c:407:46: branch_true: ...to here libei-1.5.0/src/brei-shared.c:408:17: branch_true: following ‘true’ branch (when ‘interface’ is non-NULL)... libei-1.5.0/src/brei-shared.c:410:31: branch_true: ...to here libei-1.5.0/src/brei-shared.c:410:20: branch_false: following ‘false’ branch... libei-1.5.0/src/brei-shared.c:417:17: branch_false: ...to here libei-1.5.0/src/brei-shared.c:424:26: call_function: calling ‘brei_demarshal’ from ‘brei_dispatch’ libei-1.5.0/src/brei-shared.c:424:26: return_function: returning to ‘brei_dispatch’ from ‘brei_demarshal’ libei-1.5.0/src/brei-shared.c:425:20: branch_false: following ‘false’ branch... libei-1.5.0/src/brei-shared.c:428:17: branch_false: ...to here libei-1.5.0/src/brei-shared.c:432:26: danger: ‘strings’ leaks here; was allocated at [(35)](sarif:/runs/0/results/5/codeFlows/0/threadFlows/0/locations/34) # 430| /* Success! Let's pass this on to the # 431| * context to process */ # 432|-> result = interface->dispatcher(object->implementation, opcode, nargs, args); # 433| if (result) # 434| goto error; Error: GCC_ANALYZER_WARNING (CWE-457): [#def5] libei-1.5.0/src/libei-connection.h:91:1: warning[-Wanalyzer-use-of-uninitialized-value]: use of uninitialized value ‘ei_connection_sync_callback_new(*setup.object.parent, & on_connected, 0, 0)’ libei-1.5.0/src/libei-handshake.c:166:1: enter_function: entry to ‘handle_msg_connection’ libei-1.5.0/src/libei-handshake.c:168:25: call_function: inlined call to ‘ei_handshake_get_context’ from ‘handle_msg_connection’ libei-1.5.0/src/libei-handshake.c:169:9: branch_true: following ‘true’ branch... libei-1.5.0/src/libei-handshake.c:171:28: call_function: inlined call to ‘_steal’ from ‘handle_msg_connection’ libei-1.5.0/src/libei-handshake.c:171:9: call_function: inlined call to ‘ei_handshake_unref’ from ‘handle_msg_connection’ libei-1.5.0/src/libei-handshake.c:171:9: call_function: inlined call to ‘ei_handshake_unref’ from ‘handle_msg_connection’ libei-1.5.0/src/libei-handshake.c:173:9: branch_false: following ‘false’ branch... libei-1.5.0/src/libei-handshake.c:175:26: branch_false: ...to here libei-1.5.0/src/libei-handshake.c:179:47: call_function: inlined call to ‘ei_connection_sync_callback_unrefp’ from ‘handle_msg_connection’ # 89| OBJECT_DECLARE_GETTER(ei_connection_sync_callback, context, struct ei*); # 90| OBJECT_DECLARE_GETTER(ei_connection_sync_callback, user_data, void*); # 91|-> DEFINE_UNREF_CLEANUP_FUNC(ei_connection_sync_callback); # 92| # 93| void Error: GCC_ANALYZER_WARNING (CWE-457): [#def6] libei-1.5.0/src/libei.c:103:1: warning[-Wanalyzer-use-of-uninitialized-value]: use of uninitialized value ‘brei_marshal_message(*ei.brei, *object.id, opcode, signature, nargs, & args)’ libei-1.5.0/src/libei.c:926:31: call_function: inlined call to ‘brei_result_unrefp’ from ‘ei_send_message’ # 101| OBJECT_IMPLEMENT_GETTER(ei, serial, uint32_t); # 102| # 103|-> DEFINE_UNREF_CLEANUP_FUNC(brei_result); # 104| DEFINE_UNREF_CLEANUP_FUNC(ei_pingpong); # 105| Error: GCC_ANALYZER_WARNING (CWE-404): [#def7] libei-1.5.0/src/libei.c:103:1: warning[-Wanalyzer-va-list-leak]: missing call to ‘va_end’ libei-1.5.0/src/libei.c:913:1: enter_function: entry to ‘ei_send_message’ libei-1.5.0/src/libei.c:925:9: acquire_resource: ‘va_start’ called here libei-1.5.0/src/libei.c:926:31: call_function: inlined call to ‘brei_result_unrefp’ from ‘ei_send_message’ branch_false: ...to here libei-1.5.0/src/libei.c:926:31: call_function: inlined call to ‘brei_result_unrefp’ from ‘ei_send_message’ # 101| OBJECT_IMPLEMENT_GETTER(ei, serial, uint32_t); # 102| # 103|-> DEFINE_UNREF_CLEANUP_FUNC(brei_result); # 104| DEFINE_UNREF_CLEANUP_FUNC(ei_pingpong); # 105| Error: GCC_ANALYZER_WARNING (CWE-401): [#def8] libei-1.5.0/src/libei.c:882:9: warning[-Wanalyzer-malloc-leak]: leak of ‘xalloc(24)’ libei-1.5.0/src/libei.c:874:1: enter_function: entry to ‘ei_queue_unsent’ libei-1.5.0/src/libei.c:880:36: call_function: calling ‘xalloc’ from ‘ei_queue_unsent’ libei-1.5.0/src/libei.c:880:36: return_function: returning to ‘ei_queue_unsent’ from ‘xalloc’ libei-1.5.0/src/libei.c:882:9: danger: ‘xalloc(24)’ leaks here; was allocated at [(6)](sarif:/runs/0/results/3/codeFlows/0/threadFlows/0/locations/5) # 880| struct ei_unsent *unsent = xalloc(sizeof *unsent); # 881| unsent->buf = buf; # 882|-> list_append(&ei->unsent_queue, &unsent->node); # 883| } # 884| Error: GCC_ANALYZER_WARNING (CWE-457): [#def9] libei-1.5.0/src/libeis-client.c:48:1: warning[-Wanalyzer-use-of-uninitialized-value]: use of uninitialized value ‘brei_marshal_message(*client.brei, *object.id, opcode, signature, nargs, & args)’ libei-1.5.0/src/libeis-client.c:224:31: call_function: inlined call to ‘brei_result_unrefp’ from ‘eis_client_send_message’ # 46| # 47| DEFINE_TRISTATE(started, finished, connected); # 48|-> DEFINE_UNREF_CLEANUP_FUNC(brei_result); # 49| # 50| struct eis_unsent { Error: GCC_ANALYZER_WARNING (CWE-404): [#def10] libei-1.5.0/src/libeis-client.c:48:1: warning[-Wanalyzer-va-list-leak]: missing call to ‘va_end’ libei-1.5.0/src/libeis-client.c:209:1: enter_function: entry to ‘eis_client_send_message’ libei-1.5.0/src/libeis-client.c:223:9: acquire_resource: ‘va_start’ called here libei-1.5.0/src/libeis-client.c:224:31: call_function: inlined call to ‘brei_result_unrefp’ from ‘eis_client_send_message’ branch_false: ...to here libei-1.5.0/src/libeis-client.c:224:31: call_function: inlined call to ‘brei_result_unrefp’ from ‘eis_client_send_message’ # 46| # 47| DEFINE_TRISTATE(started, finished, connected); # 48|-> DEFINE_UNREF_CLEANUP_FUNC(brei_result); # 49| # 50| struct eis_unsent { Error: GCC_ANALYZER_WARNING (CWE-401): [#def11] libei-1.5.0/src/libeis-client.c:178:9: warning[-Wanalyzer-malloc-leak]: leak of ‘xalloc(24)’ libei-1.5.0/src/libeis-client.c:168:1: enter_function: entry to ‘eis_client_queue_unsent’ libei-1.5.0/src/libeis-client.c:176:37: call_function: calling ‘xalloc’ from ‘eis_client_queue_unsent’ libei-1.5.0/src/libeis-client.c:176:37: return_function: returning to ‘eis_client_queue_unsent’ from ‘xalloc’ libei-1.5.0/src/libeis-client.c:178:9: danger: ‘xalloc(24)’ leaks here; was allocated at [(6)](sarif:/runs/0/results/3/codeFlows/0/threadFlows/0/locations/5) # 176| struct eis_unsent *unsent = xalloc(sizeof *unsent); # 177| unsent->buf = buf; # 178|-> list_append(&client->unsent_queue, &unsent->node); # 179| } # 180| Error: GCC_ANALYZER_WARNING (CWE-775): [#def12] libei-1.5.0/src/libeis-device.c:83:12: warning[-Wanalyzer-fd-leak]: leak of file descriptor ‘xdup(fd)’ libei-1.5.0/src/libeis-device.c:69:1: enter_function: entry to ‘eis_device_new_keymap’ libei-1.5.0/src/libeis-device.c:72:9: branch_true: following ‘true’ branch (when ‘type == 1’)... libei-1.5.0/src/libeis-device.c:79:13: branch_true: ...to here libei-1.5.0/src/libeis-device.c:79:12: branch_false: following ‘false’ branch... libei-1.5.0/src/libeis-device.c:82:21: branch_false: ...to here libei-1.5.0/src/libeis-device.c:82:21: call_function: calling ‘xdup’ from ‘eis_device_new_keymap’ libei-1.5.0/src/libeis-device.c:82:21: return_function: returning to ‘eis_device_new_keymap’ from ‘xdup’ libei-1.5.0/src/libeis-device.c:83:12: danger: ‘xdup(fd)’ leaks here; was opened at [(8)](sarif:/runs/0/results/0/codeFlows/0/threadFlows/0/locations/7) # 81| # 82| int newfd = xdup(fd); # 83|-> if (newfd < 0) # 84| return NULL; # 85| Error: GCC_ANALYZER_WARNING (CWE-775): [#def13] libei-1.5.0/src/liboeffis.c:357:29: warning[-Wanalyzer-fd-leak]: leak of file descriptor ‘eisfd’ libei-1.5.0/src/liboeffis.c:332:1: enter_function: entry to ‘connect_to_eis_returned’ libei-1.5.0/src/liboeffis.c:344:12: branch_false: following ‘false’ branch... libei-1.5.0/src/liboeffis.c:350:14: branch_false: ...to here libei-1.5.0/src/liboeffis.c:350:14: call_function: calling ‘xdup’ from ‘connect_to_eis_returned’ libei-1.5.0/src/liboeffis.c:350:14: return_function: returning to ‘connect_to_eis_returned’ from ‘xdup’ libei-1.5.0/src/liboeffis.c:350:14: call_function: inlined call to ‘xerrno’ from ‘connect_to_eis_returned’ libei-1.5.0/src/liboeffis.c:356:17: branch_false: ...to here libei-1.5.0/src/liboeffis.c:357:29: danger: ‘eisfd’ leaks here; was opened at [(6)](sarif:/runs/0/results/1/codeFlows/0/threadFlows/0/locations/5) # 355| } else { # 356| eisfd = rc; # 357|-> int flags = fcntl(eisfd, F_GETFL, 0); # 358| fcntl(eisfd, F_SETFL, flags | O_NONBLOCK); # 359| } Error: GCC_ANALYZER_WARNING (CWE-775): [#def14] libei-1.5.0/src/util-io.h:119:16: warning[-Wanalyzer-fd-leak]: leak of file descriptor ‘xdup(eisfd)’ libei-1.5.0/src/liboeffis.c:332:1: enter_function: entry to ‘connect_to_eis_returned’ libei-1.5.0/src/liboeffis.c:344:12: branch_false: following ‘false’ branch... libei-1.5.0/src/liboeffis.c:350:14: branch_false: ...to here libei-1.5.0/src/liboeffis.c:350:14: call_function: calling ‘xdup’ from ‘connect_to_eis_returned’ libei-1.5.0/src/liboeffis.c:350:14: return_function: returning to ‘connect_to_eis_returned’ from ‘xdup’ libei-1.5.0/src/liboeffis.c:350:14: call_function: inlined call to ‘xerrno’ from ‘connect_to_eis_returned’ # 117| static inline int # 118| xerrno(int value) { # 119|-> return value < 0 ? -errno : value; # 120| } # 121| Error: GCC_ANALYZER_WARNING (CWE-775): [#def15] libei-1.5.0/src/util-io.h:229:18: warning[-Wanalyzer-fd-leak]: leak of file descriptor ‘rc_’ libei-1.5.0/src/util-io.h:215:1: enter_function: entry to ‘xconnect’ libei-1.5.0/src/util-io.h:221:12: branch_true: following ‘true’ branch... branch_true: ...to here libei-1.5.0/src/util-io.h:225:29: acquire_resource: socket created here libei-1.5.0/src/util-io.h:225:29: branch_false: following ‘false’ branch (when ‘rc_ != -1’)... libei-1.5.0/src/util-io.h:225:22: call_function: inlined call to ‘xerrno’ from ‘xconnect’ libei-1.5.0/src/util-io.h:229:18: branch_false: ...to here libei-1.5.0/src/util-io.h:229:18: danger: ‘rc_’ leaks here # 227| return sockfd; # 228| # 229|-> int rc = xerrno(connect(sockfd, (struct sockaddr*)&addr, sizeof(addr))); # 230| if (rc < 0) # 231| return rc; Error: GCC_ANALYZER_WARNING (CWE-404): [#def16] libei-1.5.0/src/util-logger.c:75:17: warning[-Wanalyzer-va-list-leak]: missing call to ‘va_end’ libei-1.5.0/src/util-logger.c:81:1: enter_function: entry to ‘log_msg’ libei-1.5.0/src/util-logger.c:88:9: acquire_resource: ‘va_start’ called here libei-1.5.0/src/util-logger.c:89:9: call_function: calling ‘log_msg_va’ from ‘log_msg’ # 73| { # 74| if (logger->handler && logger->priority <= priority) # 75|-> logger->handler(logger, logger->prefix, # 76| priority, file, lineno, func, # 77| format, args); Error: CPPCHECK_WARNING (CWE-457): [#def17] libei-1.5.0/src/util-memfile.c:74: warning[uninitvar]: Uninitialized variable: rc # 72| rc = SYSCALL(posix_fallocate(fd, 0, sz)); # 73| } # 74|-> if (rc < 0) # 75| return NULL; # 76| Error: GCC_ANALYZER_WARNING (CWE-401): [#def18] libei-1.5.0/src/util-strings.h:149:9: warning[-Wanalyzer-malloc-leak]: leak of ‘xstrdup("org.freedesktop.portal.Desktop")’ libei-1.5.0/tools/ei-demo-client.c:197:5: enter_function: entry to ‘main’ libei-1.5.0/tools/ei-demo-client.c:208:40: call_function: calling ‘xstrdup’ from ‘main’ libei-1.5.0/tools/ei-demo-client.c:208:40: return_function: returning to ‘main’ from ‘xstrdup’ libei-1.5.0/tools/ei-demo-client.c:232:20: branch_false: following ‘false’ branch (when ‘c != -1’)... libei-1.5.0/tools/ei-demo-client.c:235:17: branch_false: ...to here libei-1.5.0/tools/ei-demo-client.c:247:30: call_function: inlined call to ‘xatoi’ from ‘main’ libei-1.5.0/tools/ei-demo-client.c:247:30: call_function: inlined call to ‘xatoi’ from ‘main’ libei-1.5.0/tools/ei-demo-client.c:247:28: branch_true: following ‘true’ branch... libei-1.5.0/tools/ei-demo-client.c:210:19: branch_true: ...to here libei-1.5.0/src/util-strings.h:149:9: danger: ‘xstrdup("org.freedesktop.portal.Desktop")’ leaks here; was allocated at [(6)](sarif:/runs/0/results/0/codeFlows/0/threadFlows/0/locations/5) # 147| long v; # 148| # 149|-> assert(base == 10 || base == 16 || base == 8); # 150| # 151| errno = 0; Error: GCC_ANALYZER_WARNING (CWE-401): [#def19] libei-1.5.0/src/util-strings.h:280:9: warning[-Wanalyzer-malloc-leak]: leak of ‘<unknown>’ libei-1.5.0/src/util-strings.c:78:1: enter_function: entry to ‘strv_from_string’ libei-1.5.0/src/util-strings.c:85:9: branch_true: following ‘true’ branch (when ‘in’ is non-NULL)... libei-1.5.0/src/util-strings.c:87:9: branch_true: ...to here libei-1.5.0/src/util-strings.c:88:16: branch_true: following ‘true’ branch... libei-1.5.0/src/util-strings.c:89:16: branch_true: ...to here libei-1.5.0/src/util-strings.c:88:16: branch_false: following ‘false’ branch... libei-1.5.0/src/util-strings.c:91:12: branch_false: ...to here libei-1.5.0/src/util-strings.c:91:12: branch_false: following ‘false’ branch (when ‘nelems != 0’)... libei-1.5.0/src/util-strings.c:94:9: branch_false: ...to here libei-1.5.0/src/util-strings.c:95:16: call_function: calling ‘xalloc’ from ‘strv_from_string’ libei-1.5.0/src/util-strings.c:95:16: return_function: returning to ‘strv_from_string’ from ‘xalloc’ libei-1.5.0/src/util-strings.c:100:24: call_function: calling ‘next_word’ from ‘strv_from_string’ libei-1.5.0/src/util-strings.c:100:24: return_function: returning to ‘strv_from_string’ from ‘next_word’ libei-1.5.0/src/util-strings.c:100:16: branch_true: following ‘true’ branch... libei-1.5.0/src/util-strings.c:101:30: branch_true: ...to here libei-1.5.0/src/util-strings.c:102:20: branch_false: following ‘false’ branch (when ‘copy’ is non-NULL)... libei-1.5.0/src/util-strings.c:107:22: branch_false: ...to here libei-1.5.0/src/util-strings.c:100:24: call_function: calling ‘next_word’ from ‘strv_from_string’ libei-1.5.0/src/util-strings.c:100:24: return_function: returning to ‘strv_from_string’ from ‘next_word’ libei-1.5.0/src/util-strings.c:100:16: branch_true: following ‘true’ branch... libei-1.5.0/src/util-strings.c:101:30: branch_true: ...to here libei-1.5.0/src/util-strings.c:102:20: branch_false: following ‘false’ branch (when ‘copy’ is non-NULL)... libei-1.5.0/src/util-strings.c:107:22: branch_false: ...to here libei-1.5.0/src/util-strings.c:100:24: call_function: calling ‘next_word’ from ‘strv_from_string’ libei-1.5.0/src/util-strings.c:100:24: return_function: returning to ‘strv_from_string’ from ‘next_word’ libei-1.5.0/src/util-strings.c:100:16: branch_true: following ‘true’ branch... libei-1.5.0/src/util-strings.c:101:30: branch_true: ...to here libei-1.5.0/src/util-strings.c:101:30: acquire_memory: allocated here libei-1.5.0/src/util-strings.c:102:20: branch_false: following ‘false’ branch (when ‘copy’ is non-NULL)... libei-1.5.0/src/util-strings.c:107:22: branch_false: ...to here libei-1.5.0/src/util-strings.c:100:24: call_function: calling ‘next_word’ from ‘strv_from_string’ libei-1.5.0/src/util-strings.c:100:24: return_function: returning to ‘strv_from_string’ from ‘next_word’ libei-1.5.0/src/util-strings.c:100:16: branch_true: following ‘true’ branch... libei-1.5.0/src/util-strings.c:101:30: branch_true: ...to here libei-1.5.0/src/util-strings.c:102:20: branch_true: following ‘true’ branch (when ‘copy’ is NULL)... libei-1.5.0/src/util-strings.c:103:25: branch_true: ...to here libei-1.5.0/src/util-strings.c:103:25: call_function: calling ‘strv_free’ from ‘strv_from_string’ # 278| } # 279| # 280|-> free (strv); # 281| } # 282| Error: GCC_ANALYZER_WARNING (CWE-457): [#def20] libei-1.5.0/tools/eis-demo-server.c:156:1: warning[-Wanalyzer-use-of-uninitialized-value]: use of uninitialized value ‘eis_device_new_region(eis_seat_new_device(seat))’ libei-1.5.0/tools/eis-demo-server.c:349:1: enter_function: entry to ‘eis_demo_server_printf_handle_event’ libei-1.5.0/tools/eis-demo-server.c:395:54: call_function: inlined call to ‘eis_demo_client_find’ from ‘eis_demo_server_printf_handle_event’ libei-1.5.0/tools/eis-demo-server.c:396:17: branch_true: following ‘true’ branch... libei-1.5.0/tools/eis-demo-server.c:398:41: branch_true: ...to here libei-1.5.0/tools/eis-demo-server.c:400:20: branch_true: following ‘true’ branch... libei-1.5.0/tools/eis-demo-server.c:401:30: branch_true: ...to here libei-1.5.0/tools/eis-demo-server.c:401:28: branch_true: following ‘true’ branch... libei-1.5.0/tools/eis-demo-server.c:402:51: branch_true: ...to here libei-1.5.0/tools/eis-demo-server.c:402:51: call_function: calling ‘add_device’ from ‘eis_demo_server_printf_handle_event’ # 154| DEFINE_UNREF_CLEANUP_FUNC(eis_keymap); # 155| DEFINE_UNREF_CLEANUP_FUNC(eis_seat); # 156|-> DEFINE_UNREF_CLEANUP_FUNC(eis_region); # 157| # 158| static void unlink_free(char **path) {
| analyzer-version-clippy | 1.90.0 |
| analyzer-version-cppcheck | 2.18.3 |
| analyzer-version-gcc | 15.2.1 |
| analyzer-version-gcc-analyzer | 16.0.0 |
| 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-184.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.20250521.132812.g8eff701.main-1.el9.noarch |
| mock-config | fedora-rawhide-gcc-latest-x86_64 |
| project-name | libei-1.5.0-1.fc44 |
| store-results-to | /tmp/tmppyngi32_/libei-1.5.0-1.fc44.tar.xz |
| time-created | 2025-10-28 18:59:05 |
| time-finished | 2025-10-28 19:00:23 |
| tool | csmock |
| tool-args | '/usr/bin/csmock' '-r' 'fedora-rawhide-gcc-latest-x86_64' '-t' 'gcc,cppcheck,shellcheck,clippy,unicontrol' '-o' '/tmp/tmppyngi32_/libei-1.5.0-1.fc44.tar.xz' '--gcc-analyze' '--unicontrol-notests' '--unicontrol-bidi-only' '--install' 'pam' '--install=gcc-latest' '--gcc-analyzer-bin=/opt/gcc-latest/bin/gcc' '/tmp/tmppyngi32_/libei-1.5.0-1.fc44.src.rpm' |
| tool-version | csmock-3.8.3.20251027.143044.ge6b947b-1.el9 |