kmod-34.2-3.fc44

List of Findings

Error: GCC_ANALYZER_WARNING (CWE-401): [#def1]
kmod-34.2/libkmod/libkmod-builtin.c:156:9: warning[-Wanalyzer-malloc-leak]: leak of 'vector'
kmod-34.2/libkmod/libkmod-builtin.c:135:15: enter_function: entry to 'strbuf_to_vector'
kmod-34.2/libkmod/libkmod-builtin.c:143:12: branch_false: following 'false' branch...
kmod-34.2/libkmod/libkmod-builtin.c:144:13: call_function: inlined call to 'umulsz_overflow' from 'strbuf_to_vector'
kmod-34.2/libkmod/libkmod-builtin.c:143:13: branch_false: following 'false' branch...
kmod-34.2/libkmod/libkmod-builtin.c:145:13: call_function: inlined call to 'strbuf_used' from 'strbuf_to_vector'
kmod-34.2/libkmod/libkmod-builtin.c:143:13: branch_false: following 'false' branch...
kmod-34.2/libkmod/libkmod-builtin.c:150:26: branch_false: ...to here
kmod-34.2/libkmod/libkmod-builtin.c:151:12: branch_false: following 'false' branch (when 'vector' is non-NULL)...
kmod-34.2/libkmod/libkmod-builtin.c:154:9: call_function: inlined call to 'strbuf_used' from 'strbuf_to_vector'
kmod-34.2/libkmod/libkmod-builtin.c:156:9: throw: if 'strbuf_init' throws an exception...
kmod-34.2/libkmod/libkmod-builtin.c:156:9: danger: 'vector' leaks here; was allocated at [(11)](sarif:/runs/0/results/0/codeFlows/0/threadFlows/0/locations/10)
#  154|   	memmove(vector + count + 1, vector, strbuf_used(buf));
#  155|   	s = (char *)(vector + count + 1);
#  156|-> 	strbuf_init(buf);
#  157|   
#  158|   	for (n = 0; n < count; n++) {

Error: GCC_ANALYZER_WARNING (CWE-401): [#def2]
kmod-34.2/libkmod/libkmod-config.c:141:24: warning[-Wanalyzer-malloc-leak]: leak of 'malloc(modnamelen + commandlen + 8)'
kmod-34.2/libkmod/libkmod-config.c:774:12: enter_function: entry to 'kmod_config_parse'
kmod-34.2/libkmod/libkmod-config.c:783:12: branch_false: following 'false' branch (when 'fp' is non-NULL)...
kmod-34.2/libkmod/libkmod-config.c:783:12: branch_false: ...to here
kmod-34.2/libkmod/libkmod-config.c:790:16: branch_true: following 'true' branch...
kmod-34.2/libkmod/libkmod-config.c:793:21: branch_true: ...to here
kmod-34.2/libkmod/libkmod-config.c:797:20: branch_false: following 'false' branch (when 'cmd' is non-NULL)...
kmod-34.2/libkmod/libkmod-config.c:800:21: branch_false: ...to here
kmod-34.2/libkmod/libkmod-config.c:800:20: branch_false: following 'false' branch (when the strings are non-equal)...
kmod-34.2/libkmod/libkmod-config.c:808:28: branch_false: ...to here
kmod-34.2/libkmod/libkmod-config.c:808:27: branch_false: following 'false' branch (when the strings are non-equal)...
kmod-34.2/libkmod/libkmod-config.c:815:28: branch_false: ...to here
kmod-34.2/libkmod/libkmod-config.c:815:27: branch_false: following 'false' branch (when the strings are non-equal)...
kmod-34.2/libkmod/libkmod-config.c:823:28: branch_false: ...to here
kmod-34.2/libkmod/libkmod-config.c:823:27: branch_true: following 'true' branch (when the strings are equal)...
kmod-34.2/libkmod/libkmod-config.c:824:41: branch_true: ...to here
kmod-34.2/libkmod/libkmod-config.c:827:28: branch_false: following 'false' branch...
kmod-34.2/libkmod/libkmod-config.c:830:25: call_function: calling 'kmod_config_add_command' from 'kmod_config_parse'
#  139|   		return -ENOMEM;
#  140|   
#  141|-> 	cmd->command = sizeof(*cmd) + modnamelen + (char *)cmd;
#  142|   	memcpy(cmd->modname, modname, modnamelen);
#  143|   	memcpy(cmd->command, command, commandlen);

Error: GCC_ANALYZER_WARNING (CWE-401): [#def3]
kmod-34.2/libkmod/libkmod-config.c:169:24: warning[-Wanalyzer-malloc-leak]: leak of 'malloc(modnamelen + optionslen + 8)'
kmod-34.2/libkmod/libkmod-config.c:612:13: enter_function: entry to 'kcmdline_parse_result'
kmod-34.2/libkmod/libkmod-config.c:615:12: branch_false: following 'false' branch...
kmod-34.2/libkmod/libkmod-config.c:618:9: branch_false: ...to here
kmod-34.2/libkmod/libkmod-config.c:629:20: branch_false: following 'false' branch...
kmod-34.2/libkmod/libkmod-config.c:634:25: branch_false: ...to here
kmod-34.2/libkmod/libkmod-config.c:634:25: call_function: calling 'kmod_config_add_options' from 'kcmdline_parse_result'
#  167|   		return -ENOMEM;
#  168|   
#  169|-> 	opt->options = sizeof(*opt) + modnamelen + (char *)opt;
#  170|   
#  171|   	memcpy(opt->modname, modname, modnamelen);

Error: GCC_ANALYZER_WARNING (CWE-401): [#def4]
kmod-34.2/libkmod/libkmod-config.c:198:23: warning[-Wanalyzer-malloc-leak]: leak of 'malloc(namelen + modnamelen + 8)'
kmod-34.2/libkmod/libkmod-config.c:774:12: enter_function: entry to 'kmod_config_parse'
kmod-34.2/libkmod/libkmod-config.c:783:12: branch_false: following 'false' branch (when 'fp' is non-NULL)...
kmod-34.2/libkmod/libkmod-config.c:783:12: branch_false: ...to here
kmod-34.2/libkmod/libkmod-config.c:790:16: branch_true: following 'true' branch...
kmod-34.2/libkmod/libkmod-config.c:793:21: branch_true: ...to here
kmod-34.2/libkmod/libkmod-config.c:797:20: branch_false: following 'false' branch (when 'cmd' is non-NULL)...
kmod-34.2/libkmod/libkmod-config.c:800:21: branch_false: ...to here
kmod-34.2/libkmod/libkmod-config.c:800:20: branch_true: following 'true' branch (when the strings are equal)...
kmod-34.2/libkmod/libkmod-config.c:801:39: branch_true: ...to here
kmod-34.2/libkmod/libkmod-config.c:804:28: branch_false: following 'false' branch...
kmod-34.2/libkmod/libkmod-config.c:807:25: call_function: calling 'kmod_config_add_alias' from 'kmod_config_parse'
#  196|   		return -ENOMEM;
#  197|   
#  198|-> 	alias->name = sizeof(*alias) + modnamelen + (char *)alias;
#  199|   
#  200|   	memcpy(alias->modname, modname, modnamelen);

Error: GCC_ANALYZER_WARNING (CWE-401): [#def5]
kmod-34.2/libkmod/libkmod-config.c:224:16: warning[-Wanalyzer-malloc-leak]: leak of 'strdup(modname)'
kmod-34.2/libkmod/libkmod-config.c:774:12: enter_function: entry to 'kmod_config_parse'
kmod-34.2/libkmod/libkmod-config.c:783:12: branch_false: following 'false' branch (when 'fp' is non-NULL)...
kmod-34.2/libkmod/libkmod-config.c:783:12: branch_false: ...to here
kmod-34.2/libkmod/libkmod-config.c:790:16: branch_true: following 'true' branch...
kmod-34.2/libkmod/libkmod-config.c:793:21: branch_true: ...to here
kmod-34.2/libkmod/libkmod-config.c:797:20: branch_false: following 'false' branch (when 'cmd' is non-NULL)...
kmod-34.2/libkmod/libkmod-config.c:800:21: branch_false: ...to here
kmod-34.2/libkmod/libkmod-config.c:800:20: branch_false: following 'false' branch (when the strings are non-equal)...
kmod-34.2/libkmod/libkmod-config.c:808:28: branch_false: ...to here
kmod-34.2/libkmod/libkmod-config.c:808:27: branch_true: following 'true' branch (when the strings are equal)...
kmod-34.2/libkmod/libkmod-config.c:809:41: branch_true: ...to here
kmod-34.2/libkmod/libkmod-config.c:811:28: branch_false: following 'false' branch...
kmod-34.2/libkmod/libkmod-config.c:814:25: branch_false: ...to here
kmod-34.2/libkmod/libkmod-config.c:814:25: call_function: calling 'kmod_config_add_blacklist' from 'kmod_config_parse'
#  222|   		return -ENOMEM;
#  223|   
#  224|-> 	list = kmod_list_append(config->blacklists, p);
#  225|   	if (!list)
#  226|   		return -ENOMEM;

Error: GCC_ANALYZER_WARNING (CWE-401): [#def6]
kmod-34.2/libkmod/libkmod-config.c:381:16: warning[-Wanalyzer-malloc-leak]: leak of 'dep'
kmod-34.2/libkmod/libkmod-config.c:774:12: enter_function: entry to 'kmod_config_parse'
kmod-34.2/libkmod/libkmod-config.c:783:12: branch_false: following 'false' branch (when 'fp' is non-NULL)...
kmod-34.2/libkmod/libkmod-config.c:783:12: branch_false: ...to here
kmod-34.2/libkmod/libkmod-config.c:790:16: branch_true: following 'true' branch...
kmod-34.2/libkmod/libkmod-config.c:793:21: branch_true: ...to here
kmod-34.2/libkmod/libkmod-config.c:797:20: branch_false: following 'false' branch (when 'cmd' is non-NULL)...
kmod-34.2/libkmod/libkmod-config.c:800:21: branch_false: ...to here
kmod-34.2/libkmod/libkmod-config.c:800:20: branch_false: following 'false' branch (when the strings are non-equal)...
kmod-34.2/libkmod/libkmod-config.c:808:28: branch_false: ...to here
kmod-34.2/libkmod/libkmod-config.c:808:27: branch_false: following 'false' branch (when the strings are non-equal)...
kmod-34.2/libkmod/libkmod-config.c:815:28: branch_false: ...to here
kmod-34.2/libkmod/libkmod-config.c:815:27: branch_false: following 'false' branch (when the strings are non-equal)...
kmod-34.2/libkmod/libkmod-config.c:823:28: branch_false: ...to here
kmod-34.2/libkmod/libkmod-config.c:823:27: branch_false: following 'false' branch (when the strings are non-equal)...
kmod-34.2/libkmod/libkmod-config.c:832:28: branch_false: ...to here
kmod-34.2/libkmod/libkmod-config.c:832:27: branch_false: following 'false' branch (when the strings are non-equal)...
kmod-34.2/libkmod/libkmod-config.c:841:28: branch_false: ...to here
kmod-34.2/libkmod/libkmod-config.c:841:27: branch_true: following 'true' branch (when the strings are equal)...
kmod-34.2/libkmod/libkmod-config.c:842:41: branch_true: ...to here
kmod-34.2/libkmod/libkmod-config.c:845:28: branch_false: following 'false' branch...
kmod-34.2/libkmod/libkmod-config.c:848:25: call_function: calling 'kmod_config_add_softdep' from 'kmod_config_parse'
#  379|   	}
#  380|   
#  381|-> 	list = kmod_list_append(config->softdeps, dep);
#  382|   	if (list == NULL) {
#  383|   		free(dep);

Error: GCC_ANALYZER_WARNING (CWE-401): [#def7]
kmod-34.2/libkmod/libkmod-config.c:389:1: warning[-Wanalyzer-malloc-leak]: leak of 'dep'
kmod-34.2/libkmod/libkmod-config.c:774:12: enter_function: entry to 'kmod_config_parse'
kmod-34.2/libkmod/libkmod-config.c:783:12: branch_false: following 'false' branch (when 'fp' is non-NULL)...
kmod-34.2/libkmod/libkmod-config.c:783:12: branch_false: ...to here
kmod-34.2/libkmod/libkmod-config.c:790:16: branch_true: following 'true' branch...
kmod-34.2/libkmod/libkmod-config.c:793:21: branch_true: ...to here
kmod-34.2/libkmod/libkmod-config.c:797:20: branch_false: following 'false' branch (when 'cmd' is non-NULL)...
kmod-34.2/libkmod/libkmod-config.c:800:21: branch_false: ...to here
kmod-34.2/libkmod/libkmod-config.c:800:20: branch_false: following 'false' branch (when the strings are non-equal)...
kmod-34.2/libkmod/libkmod-config.c:808:28: branch_false: ...to here
kmod-34.2/libkmod/libkmod-config.c:808:27: branch_false: following 'false' branch (when the strings are non-equal)...
kmod-34.2/libkmod/libkmod-config.c:815:28: branch_false: ...to here
kmod-34.2/libkmod/libkmod-config.c:815:27: branch_false: following 'false' branch (when the strings are non-equal)...
kmod-34.2/libkmod/libkmod-config.c:823:28: branch_false: ...to here
kmod-34.2/libkmod/libkmod-config.c:823:27: branch_false: following 'false' branch (when the strings are non-equal)...
kmod-34.2/libkmod/libkmod-config.c:832:28: branch_false: ...to here
kmod-34.2/libkmod/libkmod-config.c:832:27: branch_false: following 'false' branch (when the strings are non-equal)...
kmod-34.2/libkmod/libkmod-config.c:841:28: branch_false: ...to here
kmod-34.2/libkmod/libkmod-config.c:841:27: branch_true: following 'true' branch (when the strings are equal)...
kmod-34.2/libkmod/libkmod-config.c:842:41: branch_true: ...to here
kmod-34.2/libkmod/libkmod-config.c:845:28: branch_false: following 'false' branch...
kmod-34.2/libkmod/libkmod-config.c:848:25: call_function: calling 'kmod_config_add_softdep' from 'kmod_config_parse'
#  387|   
#  388|   	return 0;
#  389|-> }
#  390|   
#  391|   static int kmod_config_add_weakdep(struct kmod_config *config, const char *modname,

Error: GCC_ANALYZER_WARNING (CWE-775): [#def8]
kmod-34.2/libkmod/libkmod-config.c:660:15: warning[-Wanalyzer-fd-leak]: leak of file descriptor 'open("/proc/cmdline", 524288)'
kmod-34.2/libkmod/libkmod-config.c:653:14: acquire_resource: opened here
kmod-34.2/libkmod/libkmod-config.c:654:12: branch_false: following 'false' branch...
kmod-34.2/libkmod/libkmod-config.c:660:15: branch_false: ...to here
kmod-34.2/libkmod/libkmod-config.c:660:15: throw: if 'read_str_safe' throws an exception...
kmod-34.2/libkmod/libkmod-config.c:660:15: danger: 'open("/proc/cmdline", 524288)' leaks here; was opened at [(1)](sarif:/runs/0/results/24/codeFlows/0/threadFlows/0/locations/0)
#  658|   	}
#  659|   
#  660|-> 	err = read_str_safe(fd, buf, sizeof(buf));
#  661|   	close(fd);
#  662|   	if (err < 0) {

Error: GCC_ANALYZER_WARNING (CWE-401): [#def9]
kmod-34.2/libkmod/libkmod-config.c:790:24: warning[-Wanalyzer-malloc-leak]: leak of 'fp'
kmod-34.2/libkmod/libkmod-config.c:782:14: acquire_memory: allocated here
kmod-34.2/libkmod/libkmod-config.c:783:12: branch_false: following 'false' branch (when 'fp' is non-NULL)...
kmod-34.2/libkmod/libkmod-config.c:783:12: branch_false: ...to here
kmod-34.2/libkmod/libkmod-config.c:790:24: throw: if 'freadline_wrapped' throws an exception...
kmod-34.2/libkmod/libkmod-config.c:790:24: danger: 'fp' leaks here; was allocated at [(1)](sarif:/runs/0/results/25/codeFlows/0/threadFlows/0/locations/0)
#  788|   	}
#  789|   
#  790|-> 	while ((line = freadline_wrapped(fp, &linenum)) != NULL) {
#  791|   		char *cmd, *saveptr;
#  792|   

Error: GCC_ANALYZER_WARNING (CWE-401): [#def10]
kmod-34.2/libkmod/libkmod-config.c:798:25: warning[-Wanalyzer-malloc-leak]: leak of 'dep'
kmod-34.2/libkmod/libkmod-config.c:774:12: enter_function: entry to 'kmod_config_parse'
kmod-34.2/libkmod/libkmod-config.c:783:12: branch_false: following 'false' branch (when 'fp' is non-NULL)...
kmod-34.2/libkmod/libkmod-config.c:783:12: branch_false: ...to here
kmod-34.2/libkmod/libkmod-config.c:790:16: branch_true: following 'true' branch...
kmod-34.2/libkmod/libkmod-config.c:793:21: branch_true: ...to here
kmod-34.2/libkmod/libkmod-config.c:790:16: branch_true: following 'true' branch...
kmod-34.2/libkmod/libkmod-config.c:793:21: branch_true: ...to here
kmod-34.2/libkmod/libkmod-config.c:797:20: branch_false: following 'false' branch (when 'cmd' is non-NULL)...
kmod-34.2/libkmod/libkmod-config.c:800:21: branch_false: ...to here
kmod-34.2/libkmod/libkmod-config.c:800:20: branch_false: following 'false' branch (when the strings are non-equal)...
kmod-34.2/libkmod/libkmod-config.c:808:28: branch_false: ...to here
kmod-34.2/libkmod/libkmod-config.c:815:27: branch_false: following 'false' branch (when the strings are non-equal)...
kmod-34.2/libkmod/libkmod-config.c:823:28: branch_false: ...to here
kmod-34.2/libkmod/libkmod-config.c:823:27: branch_false: following 'false' branch (when the strings are non-equal)...
kmod-34.2/libkmod/libkmod-config.c:832:28: branch_false: ...to here
kmod-34.2/libkmod/libkmod-config.c:832:27: branch_false: following 'false' branch (when the strings are non-equal)...
kmod-34.2/libkmod/libkmod-config.c:841:28: branch_false: ...to here
kmod-34.2/libkmod/libkmod-config.c:841:27: branch_true: following 'true' branch (when the strings are equal)...
kmod-34.2/libkmod/libkmod-config.c:842:41: branch_true: ...to here
kmod-34.2/libkmod/libkmod-config.c:845:28: branch_false: following 'false' branch...
kmod-34.2/libkmod/libkmod-config.c:848:25: call_function: calling 'kmod_config_add_softdep' from 'kmod_config_parse'
#  796|   		cmd = strtok_r(line, "\t ", &saveptr);
#  797|   		if (cmd == NULL)
#  798|-> 			goto done_next;
#  799|   
#  800|   		if (streq(cmd, "alias")) {

Error: GCC_ANALYZER_WARNING (CWE-401): [#def11]
kmod-34.2/libkmod/libkmod-config.c:958:23: warning[-Wanalyzer-malloc-leak]: leak of 'cf'
kmod-34.2/libkmod/libkmod-config.c:943:12: branch_false: following 'false' branch (when 'cmp != 0')...
kmod-34.2/libkmod/libkmod-config.c:948:19: branch_false: ...to here
kmod-34.2/libkmod/libkmod-config.c:949:14: acquire_memory: allocated here
kmod-34.2/libkmod/libkmod-config.c:950:12: branch_false: following 'false' branch (when 'cf' is non-NULL)...
kmod-34.2/libkmod/libkmod-config.c:953:9: branch_false: ...to here
kmod-34.2/libkmod/libkmod-config.c:957:12: branch_true: following 'true' branch (when 'lpos' is NULL)...
kmod-34.2/libkmod/libkmod-config.c:958:23: branch_true: ...to here
kmod-34.2/libkmod/libkmod-config.c:958:23: throw: if 'kmod_list_append' throws an exception...
kmod-34.2/libkmod/libkmod-config.c:958:23: danger: 'cf' leaks here; was allocated at [(3)](sarif:/runs/0/results/27/codeFlows/0/threadFlows/0/locations/2)
#  956|   
#  957|   	if (lpos == NULL)
#  958|-> 		tmp = kmod_list_append(*list, cf);
#  959|   	else if (lpos == *list)
#  960|   		tmp = kmod_list_prepend(*list, cf);

Error: GCC_ANALYZER_WARNING (CWE-401): [#def12]
kmod-34.2/libkmod/libkmod-config.c:960:23: warning[-Wanalyzer-malloc-leak]: leak of 'cf'
kmod-34.2/libkmod/libkmod-config.c:936:9: branch_true: following 'true' branch (when 'lpos' is non-NULL)...
kmod-34.2/libkmod/libkmod-config.c:937:17: branch_true: ...to here
kmod-34.2/libkmod/libkmod-config.c:943:12: branch_false: following 'false' branch (when 'cmp != 0')...
kmod-34.2/libkmod/libkmod-config.c:948:19: branch_false: ...to here
kmod-34.2/libkmod/libkmod-config.c:949:14: acquire_memory: allocated here
kmod-34.2/libkmod/libkmod-config.c:950:12: branch_false: following 'false' branch (when 'cf' is non-NULL)...
kmod-34.2/libkmod/libkmod-config.c:953:9: branch_false: ...to here
kmod-34.2/libkmod/libkmod-config.c:957:12: branch_false: following 'false' branch (when 'lpos' is non-NULL)...
kmod-34.2/libkmod/libkmod-config.c:959:26: branch_false: ...to here
kmod-34.2/libkmod/libkmod-config.c:959:17: branch_true: following 'true' branch...
kmod-34.2/libkmod/libkmod-config.c:960:23: branch_true: ...to here
kmod-34.2/libkmod/libkmod-config.c:960:23: throw: if 'kmod_list_prepend' throws an exception...
kmod-34.2/libkmod/libkmod-config.c:960:23: danger: 'cf' leaks here; was allocated at [(5)](sarif:/runs/0/results/28/codeFlows/0/threadFlows/0/locations/4)
#  958|   		tmp = kmod_list_append(*list, cf);
#  959|   	else if (lpos == *list)
#  960|-> 		tmp = kmod_list_prepend(*list, cf);
#  961|   	else
#  962|   		tmp = kmod_list_insert_before(lpos, cf);

Error: GCC_ANALYZER_WARNING (CWE-401): [#def13]
kmod-34.2/libkmod/libkmod-config.c:962:23: warning[-Wanalyzer-malloc-leak]: leak of 'cf'
kmod-34.2/libkmod/libkmod-config.c:936:9: branch_true: following 'true' branch (when 'lpos' is non-NULL)...
kmod-34.2/libkmod/libkmod-config.c:937:17: branch_true: ...to here
kmod-34.2/libkmod/libkmod-config.c:936:9: branch_true: following 'true' branch (when 'lpos' is non-NULL)...
kmod-34.2/libkmod/libkmod-config.c:937:17: branch_true: ...to here
kmod-34.2/libkmod/libkmod-config.c:943:12: branch_false: following 'false' branch (when 'cmp != 0')...
kmod-34.2/libkmod/libkmod-config.c:948:19: branch_false: ...to here
kmod-34.2/libkmod/libkmod-config.c:949:14: acquire_memory: allocated here
kmod-34.2/libkmod/libkmod-config.c:950:12: branch_false: following 'false' branch (when 'cf' is non-NULL)...
kmod-34.2/libkmod/libkmod-config.c:953:9: branch_false: ...to here
kmod-34.2/libkmod/libkmod-config.c:957:12: branch_false: following 'false' branch (when 'lpos' is non-NULL)...
kmod-34.2/libkmod/libkmod-config.c:959:26: branch_false: ...to here
kmod-34.2/libkmod/libkmod-config.c:959:17: branch_false: following 'false' branch...
kmod-34.2/libkmod/libkmod-config.c:962:23: branch_false: ...to here
kmod-34.2/libkmod/libkmod-config.c:962:23: throw: if 'kmod_list_insert_before' throws an exception...
kmod-34.2/libkmod/libkmod-config.c:962:23: danger: 'cf' leaks here; was allocated at [(7)](sarif:/runs/0/results/29/codeFlows/0/threadFlows/0/locations/6)
#  960|   		tmp = kmod_list_prepend(*list, cf);
#  961|   	else
#  962|-> 		tmp = kmod_list_insert_before(lpos, cf);
#  963|   
#  964|   	if (tmp == NULL) {

Error: GCC_ANALYZER_WARNING (CWE-401): [#def14]
kmod-34.2/libkmod/libkmod-config.c:973:1: warning[-Wanalyzer-malloc-leak]: leak of 'cf'
kmod-34.2/libkmod/libkmod-config.c:943:12: branch_false: following 'false' branch (when 'cmp != 0')...
kmod-34.2/libkmod/libkmod-config.c:948:19: branch_false: ...to here
kmod-34.2/libkmod/libkmod-config.c:949:14: acquire_memory: allocated here
kmod-34.2/libkmod/libkmod-config.c:950:12: branch_false: following 'false' branch (when 'cf' is non-NULL)...
kmod-34.2/libkmod/libkmod-config.c:953:9: branch_false: ...to here
kmod-34.2/libkmod/libkmod-config.c:957:12: branch_true: following 'true' branch (when 'lpos' is NULL)...
kmod-34.2/libkmod/libkmod-config.c:958:23: branch_true: ...to here
kmod-34.2/libkmod/libkmod-config.c:964:12: branch_false: following 'false' branch (when 'tmp' is non-NULL)...
kmod-34.2/libkmod/libkmod-config.c:969:12: branch_false: ...to here
kmod-34.2/libkmod/libkmod-config.c:969:12: branch_true: following 'true' branch (when 'lpos' is NULL)...
kmod-34.2/libkmod/libkmod-config.c:970:17: branch_true: ...to here
kmod-34.2/libkmod/libkmod-config.c:973:1: danger: 'cf' leaks here; was allocated at [(3)](sarif:/runs/0/results/30/codeFlows/0/threadFlows/0/locations/2)
#  971|   
#  972|   	return 0;
#  973|-> }
#  974|   
#  975|   /*

Error: GCC_ANALYZER_WARNING (CWE-401): [#def15]
kmod-34.2/libkmod/libkmod-config.c:1005:21: warning[-Wanalyzer-malloc-leak]: leak of 'opendir(path)'
kmod-34.2/libkmod/libkmod-config.c:986:12: branch_false: following 'false' branch...
kmod-34.2/libkmod/libkmod-config.c:992:23: branch_false: ...to here
kmod-34.2/libkmod/libkmod-config.c:994:12: branch_false: following 'false' branch...
kmod-34.2/libkmod/libkmod-config.c:999:13: branch_false: ...to here
kmod-34.2/libkmod/libkmod-config.c:999:13: acquire_memory: allocated here
kmod-34.2/libkmod/libkmod-config.c:1000:12: branch_false: following 'false' branch...
kmod-34.2/libkmod/libkmod-config.c:1005:21: branch_false: ...to here
kmod-34.2/libkmod/libkmod-config.c:1005:21: throw: if 'readdir' throws an exception...
kmod-34.2/libkmod/libkmod-config.c:1005:21: danger: 'opendir(path)' leaks here; was allocated at [(5)](sarif:/runs/0/results/31/codeFlows/0/threadFlows/0/locations/4)
# 1003|   	}
# 1004|   
# 1005|-> 	for (dent = readdir(d); dent != NULL; dent = readdir(d)) {
# 1006|   		if (conf_files_filter_out(ctx, d, path, dent->d_name))
# 1007|   			continue;

Error: GCC_ANALYZER_WARNING (CWE-775): [#def16]
kmod-34.2/libkmod/libkmod-config.c:1077:17: warning[-Wanalyzer-fd-leak]: leak of file descriptor 'open(fn, 524288)'
kmod-34.2/libkmod/libkmod-config.c:1016:5: enter_function: entry to 'kmod_config_new'
kmod-34.2/libkmod/libkmod-config.c:1024:9: call_function: calling 'conf_files_insert_sorted' from 'kmod_config_new'
kmod-34.2/libkmod/libkmod-config.c:1024:9: return_function: returning to 'kmod_config_new' from 'conf_files_insert_sorted'
kmod-34.2/libkmod/libkmod-config.c:1025:9: call_function: calling 'conf_files_insert_sorted' from 'kmod_config_new'
kmod-34.2/libkmod/libkmod-config.c:1025:9: return_function: returning to 'kmod_config_new' from 'conf_files_insert_sorted'
kmod-34.2/libkmod/libkmod-config.c:1027:21: branch_false: following 'false' branch...
kmod-34.2/libkmod/libkmod-config.c:1053:30: branch_false: ...to here
kmod-34.2/libkmod/libkmod-config.c:1054:12: branch_false: following 'false' branch (when 'config' is non-NULL)...
kmod-34.2/libkmod/libkmod-config.c:1057:9: branch_false: ...to here
kmod-34.2/libkmod/libkmod-config.c:1060:16: branch_true: following 'true' branch...
kmod-34.2/libkmod/libkmod-config.c:1063:35: branch_true: ...to here
kmod-34.2/libkmod/libkmod-config.c:1066:20: branch_true: following 'true' branch...
kmod-34.2/libkmod/libkmod-config.c:1067:25: branch_true: ...to here
kmod-34.2/libkmod/libkmod-config.c:1076:22: acquire_resource: opened here
kmod-34.2/libkmod/libkmod-config.c:1077:17: throw: if 'kmod_get_log_priority' throws an exception...
kmod-34.2/libkmod/libkmod-config.c:1077:17: danger: 'open(fn, 524288)' leaks here; was opened at [(40)](sarif:/runs/0/results/32/codeFlows/0/threadFlows/0/locations/39)
# 1075|   
# 1076|   		fd = open(fn, O_RDONLY | O_CLOEXEC);
# 1077|-> 		DBG(ctx, "parsing file '%s' fd=%d\n", fn, fd);
# 1078|   
# 1079|   		if (fd >= 0)

Error: GCC_ANALYZER_WARNING (CWE-401): [#def17]
kmod-34.2/libkmod/libkmod-config.c:1136:44: warning[-Wanalyzer-malloc-leak]: leak of 'iter'
kmod-34.2/libkmod/libkmod-config.c:1135:41: acquire_memory: allocated here
kmod-34.2/libkmod/libkmod-config.c:1136:44: throw: if 'kmod_get_config' throws an exception...
kmod-34.2/libkmod/libkmod-config.c:1136:44: danger: 'iter' leaks here; was allocated at [(1)](sarif:/runs/0/results/34/codeFlows/0/threadFlows/0/locations/0)
# 1134|   {
# 1135|   	struct kmod_config_iter *iter = calloc(1, sizeof(*iter));
# 1136|-> 	const struct kmod_config *config = kmod_get_config(ctx);
# 1137|   
# 1138|   	if (iter == NULL)

Error: GCC_ANALYZER_WARNING (CWE-401): [#def18]
kmod-34.2/libkmod/libkmod-file-xz.c:49:17: warning[-Wanalyzer-malloc-leak]: leak of 'tmp'
kmod-34.2/libkmod/libkmod-file-xz.c:123:5: enter_function: entry to 'kmod_file_load_xz'
kmod-34.2/libkmod/libkmod-file-xz.c:136:12: branch_false: following 'false' branch...
kmod-34.2/libkmod/libkmod-file-xz.c:139:19: branch_false: ...to here
kmod-34.2/libkmod/libkmod-file-xz.c:139:19: branch_false: following 'false' branch...
kmod-34.2/libkmod/libkmod-file-xz.c:143:15: branch_false: ...to here
kmod-34.2/libkmod/libkmod-file-xz.c:143:15: call_function: calling 'xz_uncompress' from 'kmod_file_load_xz'
#   47|   	switch (ret) {
#   48|   	case LZMA_MEM_ERROR:
#   49|-> 		ERR(file->ctx, "xz: %s\n", strerror(ENOMEM));
#   50|   		break;
#   51|   	case LZMA_FORMAT_ERROR:

Error: GCC_ANALYZER_WARNING (CWE-401): [#def19]
kmod-34.2/libkmod/libkmod-file-xz.c:52:17: warning[-Wanalyzer-malloc-leak]: leak of 'tmp'
kmod-34.2/libkmod/libkmod-file-xz.c:123:5: enter_function: entry to 'kmod_file_load_xz'
kmod-34.2/libkmod/libkmod-file-xz.c:136:12: branch_false: following 'false' branch...
kmod-34.2/libkmod/libkmod-file-xz.c:139:19: branch_false: ...to here
kmod-34.2/libkmod/libkmod-file-xz.c:139:19: branch_false: following 'false' branch...
kmod-34.2/libkmod/libkmod-file-xz.c:143:15: branch_false: ...to here
kmod-34.2/libkmod/libkmod-file-xz.c:143:15: call_function: calling 'xz_uncompress' from 'kmod_file_load_xz'
#   50|   		break;
#   51|   	case LZMA_FORMAT_ERROR:
#   52|-> 		ERR(file->ctx, "xz: File format not recognized\n");
#   53|   		break;
#   54|   	case LZMA_OPTIONS_ERROR:

Error: GCC_ANALYZER_WARNING (CWE-401): [#def20]
kmod-34.2/libkmod/libkmod-file-xz.c:55:17: warning[-Wanalyzer-malloc-leak]: leak of 'tmp'
kmod-34.2/libkmod/libkmod-file-xz.c:123:5: enter_function: entry to 'kmod_file_load_xz'
kmod-34.2/libkmod/libkmod-file-xz.c:136:12: branch_false: following 'false' branch...
kmod-34.2/libkmod/libkmod-file-xz.c:139:19: branch_false: ...to here
kmod-34.2/libkmod/libkmod-file-xz.c:139:19: branch_false: following 'false' branch...
kmod-34.2/libkmod/libkmod-file-xz.c:143:15: branch_false: ...to here
kmod-34.2/libkmod/libkmod-file-xz.c:143:15: call_function: calling 'xz_uncompress' from 'kmod_file_load_xz'
#   53|   		break;
#   54|   	case LZMA_OPTIONS_ERROR:
#   55|-> 		ERR(file->ctx, "xz: Unsupported compression options\n");
#   56|   		break;
#   57|   	case LZMA_DATA_ERROR:

Error: GCC_ANALYZER_WARNING (CWE-401): [#def21]
kmod-34.2/libkmod/libkmod-file-xz.c:58:17: warning[-Wanalyzer-malloc-leak]: leak of 'tmp'
kmod-34.2/libkmod/libkmod-file-xz.c:123:5: enter_function: entry to 'kmod_file_load_xz'
kmod-34.2/libkmod/libkmod-file-xz.c:136:12: branch_false: following 'false' branch...
kmod-34.2/libkmod/libkmod-file-xz.c:139:19: branch_false: ...to here
kmod-34.2/libkmod/libkmod-file-xz.c:139:19: branch_false: following 'false' branch...
kmod-34.2/libkmod/libkmod-file-xz.c:143:15: branch_false: ...to here
kmod-34.2/libkmod/libkmod-file-xz.c:143:15: call_function: calling 'xz_uncompress' from 'kmod_file_load_xz'
#   56|   		break;
#   57|   	case LZMA_DATA_ERROR:
#   58|-> 		ERR(file->ctx, "xz: File is corrupt\n");
#   59|   		break;
#   60|   	case LZMA_BUF_ERROR:

Error: GCC_ANALYZER_WARNING (CWE-401): [#def22]
kmod-34.2/libkmod/libkmod-file-xz.c:93:23: warning[-Wanalyzer-malloc-leak]: leak of 'tmp'
kmod-34.2/libkmod/libkmod-file-xz.c:82:20: branch_true: following 'true' branch...
kmod-34.2/libkmod/libkmod-file-xz.c:83:41: branch_true: ...to here
kmod-34.2/libkmod/libkmod-file-xz.c:84:28: branch_false: following 'false' branch...
kmod-34.2/libkmod/libkmod-file-xz.c:88:25: branch_false: ...to here
kmod-34.2/libkmod/libkmod-file-xz.c:90:28: branch_true: following 'true' branch...
kmod-34.2/libkmod/libkmod-file-xz.c:93:23: branch_true: ...to here
kmod-34.2/libkmod/libkmod-file-xz.c:94:20: branch_true: following 'true' branch...
kmod-34.2/libkmod/libkmod-file-xz.c:95:32: branch_true: ...to here
kmod-34.2/libkmod/libkmod-file-xz.c:97:28: branch_false: following 'false' branch (when 'tmp' is non-NULL)...
kmod-34.2/libkmod/libkmod-file-xz.c:101:32: branch_false: ...to here
kmod-34.2/libkmod/libkmod-file-xz.c:107:20: branch_false: following 'false' branch...
kmod-34.2/libkmod/libkmod-file-xz.c:109:20: branch_false: ...to here
kmod-34.2/libkmod/libkmod-file-xz.c:109:20: branch_false: following 'false' branch...
kmod-34.2/libkmod/libkmod-file-xz.c:109:20: branch_false: ...to here
kmod-34.2/libkmod/libkmod-file-xz.c:82:20: branch_true: following 'true' branch...
kmod-34.2/libkmod/libkmod-file-xz.c:83:41: branch_true: ...to here
kmod-34.2/libkmod/libkmod-file-xz.c:84:28: branch_false: following 'false' branch...
kmod-34.2/libkmod/libkmod-file-xz.c:88:25: branch_false: ...to here
kmod-34.2/libkmod/libkmod-file-xz.c:90:28: branch_true: following 'true' branch...
kmod-34.2/libkmod/libkmod-file-xz.c:93:23: branch_true: ...to here
kmod-34.2/libkmod/libkmod-file-xz.c:93:23: throw: if the called function throws an exception...
kmod-34.2/libkmod/libkmod-file-xz.c:93:23: danger: 'tmp' leaks here; was allocated at [(9)](sarif:/runs/0/results/8/codeFlows/0/threadFlows/0/locations/8)
#   91|   				action = LZMA_FINISH;
#   92|   		}
#   93|-> 		ret = sym_lzma_code(strm, action);
#   94|   		if (strm->avail_out == 0 || ret != LZMA_OK) {
#   95|   			size_t write_size = BUFSIZ - strm->avail_out;

Error: GCC_ANALYZER_WARNING (CWE-401): [#def23]
kmod-34.2/libkmod/libkmod-file-zstd.c:100:20: warning[-Wanalyzer-malloc-leak]: leak of 'dst_buf'
kmod-34.2/libkmod/libkmod-file-zstd.c:62:12: branch_false: following 'false' branch...
kmod-34.2/libkmod/libkmod-file-zstd.c:73:20: branch_false: ...to here
kmod-34.2/libkmod/libkmod-file-zstd.c:75:12: branch_false: following 'false' branch (when 'src_buf != 18446744073709551615')...
kmod-34.2/libkmod/libkmod-file-zstd.c:80:22: branch_false: ...to here
kmod-34.2/libkmod/libkmod-file-zstd.c:81:12: branch_false: following 'false' branch...
kmod-34.2/libkmod/libkmod-file-zstd.c:94:19: branch_false: ...to here
kmod-34.2/libkmod/libkmod-file-zstd.c:94:19: acquire_memory: allocated here
kmod-34.2/libkmod/libkmod-file-zstd.c:95:12: branch_false: following 'false' branch (when 'dst_buf' is non-NULL)...
kmod-34.2/libkmod/libkmod-file-zstd.c:100:20: branch_false: ...to here
kmod-34.2/libkmod/libkmod-file-zstd.c:100:20: throw: if the called function throws an exception...
kmod-34.2/libkmod/libkmod-file-zstd.c:100:20: danger: 'dst_buf' leaks here; was allocated at [(7)](sarif:/runs/0/results/0/codeFlows/0/threadFlows/0/locations/6)
#   98|   	}
#   99|   
#  100|-> 	dst_size = sym_ZSTD_decompress(dst_buf, dst_size, src_buf, src_size);
#  101|   	if (sym_ZSTD_isError(dst_size)) {
#  102|   		ERR(file->ctx, "zstd: %s\n", sym_ZSTD_getErrorName(dst_size));

Error: GCC_ANALYZER_WARNING (CWE-401): [#def24]
kmod-34.2/libkmod/libkmod-file.c:92:20: warning[-Wanalyzer-malloc-leak]: leak of 'file'
kmod-34.2/libkmod/libkmod-file.c:88:16: acquire_memory: allocated here
kmod-34.2/libkmod/libkmod-file.c:89:12: branch_false: following 'false' branch (when 'file' is non-NULL)...
kmod-34.2/libkmod/libkmod-file.c:92:20: branch_false: ...to here
kmod-34.2/libkmod/libkmod-file.c:92:20: throw: if 'open' throws an exception...
kmod-34.2/libkmod/libkmod-file.c:92:20: danger: 'file' leaks here; was allocated at [(1)](sarif:/runs/0/results/0/codeFlows/0/threadFlows/0/locations/0)
#   90|   		return NULL;
#   91|   
#   92|-> 	file->fd = open(filename, O_RDONLY | O_CLOEXEC);
#   93|   	if (file->fd < 0) {
#   94|   		free(file);

Error: GCC_ANALYZER_WARNING (CWE-775): [#def25]
kmod-34.2/libkmod/libkmod-file.c:98:14: warning[-Wanalyzer-fd-leak]: leak of file descriptor 'open(filename, 524288)'
kmod-34.2/libkmod/libkmod-file.c:89:12: branch_false: following 'false' branch (when 'file' is non-NULL)...
kmod-34.2/libkmod/libkmod-file.c:92:20: branch_false: ...to here
kmod-34.2/libkmod/libkmod-file.c:92:20: acquire_resource: opened here
kmod-34.2/libkmod/libkmod-file.c:93:12: branch_false: following 'false' branch...
kmod-34.2/libkmod/libkmod-file.c:98:14: branch_false: ...to here
kmod-34.2/libkmod/libkmod-file.c:98:14: throw: if 'pread_str_safe' throws an exception...
kmod-34.2/libkmod/libkmod-file.c:98:14: danger: 'open(filename, 524288)' leaks here; was opened at [(3)](sarif:/runs/0/results/1/codeFlows/0/threadFlows/0/locations/2)
#   96|   	}
#   97|   
#   98|-> 	sz = pread_str_safe(file->fd, buf, sizeof(buf), 0);
#   99|   	if (sz != (sizeof(buf) - 1)) {
#  100|   		if (sz < 0)

Error: GCC_ANALYZER_WARNING (CWE-401): [#def26]
kmod-34.2/libkmod/libkmod-file.c:98:14: warning[-Wanalyzer-malloc-leak]: leak of 'file'
kmod-34.2/libkmod/libkmod-file.c:88:16: acquire_memory: allocated here
kmod-34.2/libkmod/libkmod-file.c:89:12: branch_false: following 'false' branch (when 'file' is non-NULL)...
kmod-34.2/libkmod/libkmod-file.c:92:20: branch_false: ...to here
kmod-34.2/libkmod/libkmod-file.c:93:12: branch_false: following 'false' branch...
kmod-34.2/libkmod/libkmod-file.c:98:14: branch_false: ...to here
kmod-34.2/libkmod/libkmod-file.c:98:14: throw: if 'pread_str_safe' throws an exception...
kmod-34.2/libkmod/libkmod-file.c:98:14: danger: 'file' leaks here; was allocated at [(1)](sarif:/runs/0/results/2/codeFlows/0/threadFlows/0/locations/0)
#   96|   	}
#   97|   
#   98|-> 	sz = pread_str_safe(file->fd, buf, sizeof(buf), 0);
#   99|   	if (sz != (sizeof(buf) - 1)) {
#  100|   		if (sz < 0)

Error: GCC_ANALYZER_WARNING (CWE-401): [#def27]
kmod-34.2/libkmod/libkmod-file.c:105:17: warning[-Wanalyzer-malloc-leak]: leak of 'file'
kmod-34.2/libkmod/libkmod-file.c:88:16: acquire_memory: allocated here
kmod-34.2/libkmod/libkmod-file.c:89:12: branch_false: following 'false' branch (when 'file' is non-NULL)...
kmod-34.2/libkmod/libkmod-file.c:92:20: branch_false: ...to here
kmod-34.2/libkmod/libkmod-file.c:93:12: branch_false: following 'false' branch...
kmod-34.2/libkmod/libkmod-file.c:98:14: branch_false: ...to here
kmod-34.2/libkmod/libkmod-file.c:99:12: branch_true: following 'true' branch...
kmod-34.2/libkmod/libkmod-file.c:100:20: branch_true: ...to here
kmod-34.2/libkmod/libkmod-file.c:100:20: branch_false: following 'false' branch...
kmod-34.2/libkmod/libkmod-file.c:103:25: branch_false: ...to here
kmod-34.2/libkmod/libkmod-file.c:105:17: throw: if 'close' throws an exception...
kmod-34.2/libkmod/libkmod-file.c:105:17: danger: 'file' leaks here; was allocated at [(1)](sarif:/runs/0/results/3/codeFlows/0/threadFlows/0/locations/0)
#  103|   			errno = EINVAL;
#  104|   
#  105|-> 		close(file->fd);
#  106|   		free(file);
#  107|   		return NULL;

Error: CPPCHECK_WARNING (CWE-401): [#def28]
kmod-34.2/libkmod/libkmod-list.c:99: error[memleak]: Memory leak: new
#   97|   	list_node_append(list ? &list->node : NULL, &new->node);
#   98|   
#   99|-> 	return list ? list : new;
#  100|   }
#  101|   

Error: CPPCHECK_WARNING (CWE-401): [#def29]
kmod-34.2/libkmod/libkmod-list.c:116: error[memleak]: Memory leak: new
#  114|   	list_node_insert_after(&list->node, &new->node);
#  115|   
#  116|-> 	return list;
#  117|   }
#  118|   

Error: GCC_ANALYZER_WARNING (CWE-401): [#def30]
kmod-34.2/libkmod/libkmod-module.c:259:18: warning[-Wanalyzer-malloc-leak]: leak of 'm'
kmod-34.2/libkmod/libkmod-module.c:253:13: acquire_memory: allocated here
kmod-34.2/libkmod/libkmod-module.c:254:12: branch_false: following 'false' branch (when 'm' is non-NULL)...
kmod-34.2/libkmod/libkmod-module.c:257:9: branch_false: ...to here
kmod-34.2/libkmod/libkmod-module.c:259:18: throw: if 'kmod_ref' throws an exception...
kmod-34.2/libkmod/libkmod-module.c:259:18: danger: 'm' leaks here; was allocated at [(1)](sarif:/runs/0/results/0/codeFlows/0/threadFlows/0/locations/0)
#  257|   	memset(m, 0, sizeof(*m));
#  258|   
#  259|-> 	m->ctx = kmod_ref(ctx);
#  260|   	m->name = (char *)m + sizeof(*m);
#  261|   	memcpy(m->name, key, keylen + 1);

Error: GCC_ANALYZER_WARNING (CWE-401): [#def31]
kmod-34.2/libkmod/libkmod-module.c:273:15: warning[-Wanalyzer-malloc-leak]: leak of 'm'
kmod-34.2/libkmod/libkmod-module.c:253:13: acquire_memory: allocated here
kmod-34.2/libkmod/libkmod-module.c:254:12: branch_false: following 'false' branch (when 'm' is non-NULL)...
kmod-34.2/libkmod/libkmod-module.c:257:9: branch_false: ...to here
kmod-34.2/libkmod/libkmod-module.c:262:12: branch_true: following 'true' branch (when 'alias' is NULL)...
kmod-34.2/libkmod/libkmod-module.c:263:17: branch_true: ...to here
kmod-34.2/libkmod/libkmod-module.c:273:15: throw: if 'kmod_pool_add_module' throws an exception...
kmod-34.2/libkmod/libkmod-module.c:273:15: danger: 'm' leaks here; was allocated at [(1)](sarif:/runs/0/results/1/codeFlows/0/threadFlows/0/locations/0)
#  271|   
#  272|   	m->refcount = 1;
#  273|-> 	err = kmod_pool_add_module(ctx, m, m->hashkey);
#  274|   	if (err < 0) {
#  275|   		free(m);

Error: GCC_ANALYZER_WARNING (CWE-775): [#def32]
kmod-34.2/libkmod/libkmod-module.c:289:13: warning[-Wanalyzer-file-leak]: leak of FILE 'fopen("/proc/modules", "re")'
kmod-34.2/libkmod/libkmod-module.c:1352:17: enter_function: entry to 'kmod_module_new_from_loaded'
kmod-34.2/libkmod/libkmod-module.c:1358:12: branch_false: following 'false' branch...
kmod-34.2/libkmod/libkmod-module.c:1361:14: branch_false: ...to here
kmod-34.2/libkmod/libkmod-module.c:1361:14: acquire_resource: opened here
kmod-34.2/libkmod/libkmod-module.c:1362:12: branch_false: following 'false' branch...
kmod-34.2/libkmod/libkmod-module.c:1362:12: branch_false: ...to here
kmod-34.2/libkmod/libkmod-module.c:1368:16: branch_true: following 'true' branch...
kmod-34.2/libkmod/libkmod-module.c:1372:30: branch_true: ...to here
kmod-34.2/libkmod/libkmod-module.c:1375:23: call_function: calling 'kmod_module_new_from_name' from 'kmod_module_new_from_loaded'
#  287|   	char name_norm[PATH_MAX];
#  288|   
#  289|-> 	if (ctx == NULL || name == NULL || mod == NULL)
#  290|   		return -ENOENT;
#  291|   

Error: GCC_ANALYZER_WARNING (CWE-401): [#def33]
kmod-34.2/libkmod/libkmod-module.c:289:13: warning[-Wanalyzer-malloc-leak]: leak of 'fopen("/proc/modules", "re")'
kmod-34.2/libkmod/libkmod-module.c:1352:17: enter_function: entry to 'kmod_module_new_from_loaded'
kmod-34.2/libkmod/libkmod-module.c:1358:12: branch_false: following 'false' branch...
kmod-34.2/libkmod/libkmod-module.c:1361:14: branch_false: ...to here
kmod-34.2/libkmod/libkmod-module.c:1361:14: acquire_memory: allocated here
kmod-34.2/libkmod/libkmod-module.c:1362:12: branch_false: following 'false' branch...
kmod-34.2/libkmod/libkmod-module.c:1362:12: branch_false: ...to here
kmod-34.2/libkmod/libkmod-module.c:1368:16: branch_true: following 'true' branch...
kmod-34.2/libkmod/libkmod-module.c:1372:30: branch_true: ...to here
kmod-34.2/libkmod/libkmod-module.c:1375:23: call_function: calling 'kmod_module_new_from_name' from 'kmod_module_new_from_loaded'
#  287|   	char name_norm[PATH_MAX];
#  288|   
#  289|-> 	if (ctx == NULL || name == NULL || mod == NULL)
#  290|   		return -ENOENT;
#  291|   

Error: GCC_ANALYZER_WARNING (CWE-401): [#def34]
kmod-34.2/libkmod/libkmod-module.c:1131:17: warning[-Wanalyzer-malloc-leak]: leak of 'tmp'
kmod-34.2/libkmod/libkmod-module.c:1118:12: branch_false: following 'false' branch (when 'mod' is non-NULL)...
kmod-34.2/libkmod/libkmod-module.c:1121:14: branch_false: ...to here
kmod-34.2/libkmod/libkmod-module.c:1121:12: branch_false: following 'false' branch...
kmod-34.2/libkmod/libkmod-module.c:1129:42: branch_false: ...to here
kmod-34.2/libkmod/libkmod-module.c:1131:17: branch_true: following 'true' branch (when 'l' is non-NULL)...
kmod-34.2/libkmod/libkmod-module.c:1132:47: branch_true: ...to here
kmod-34.2/libkmod/libkmod-module.c:1151:28: branch_false: following 'false' branch (when 'tmp' is non-NULL)...
kmod-34.2/libkmod/libkmod-module.c:1158:28: branch_false: ...to here
kmod-34.2/libkmod/libkmod-module.c:1158:28: branch_false: following 'false' branch (when 'optslen == 0')...
kmod-34.2/libkmod/libkmod-module.c:1163:32: branch_false: ...to here
kmod-34.2/libkmod/libkmod-module.c:1131:17: throw: if 'kmod_list_next' throws an exception...
kmod-34.2/libkmod/libkmod-module.c:1131:17: danger: 'tmp' leaks here; was allocated at [(7)](sarif:/runs/0/results/30/codeFlows/0/threadFlows/0/locations/6)
# 1129|   		config = kmod_get_config(mod->ctx);
# 1130|   
# 1131|-> 		kmod_list_foreach(l, config->options) {
# 1132|   			const char *modname = kmod_option_get_modname(l);
# 1133|   			const char *str;

Error: GCC_ANALYZER_WARNING (CWE-401): [#def35]
kmod-34.2/libkmod/libkmod-module.c:1132:47: warning[-Wanalyzer-malloc-leak]: leak of 'tmp'
kmod-34.2/libkmod/libkmod-module.c:1118:12: branch_false: following 'false' branch (when 'mod' is non-NULL)...
kmod-34.2/libkmod/libkmod-module.c:1121:14: branch_false: ...to here
kmod-34.2/libkmod/libkmod-module.c:1121:12: branch_false: following 'false' branch...
kmod-34.2/libkmod/libkmod-module.c:1129:42: branch_false: ...to here
kmod-34.2/libkmod/libkmod-module.c:1131:17: branch_true: following 'true' branch (when 'l' is non-NULL)...
kmod-34.2/libkmod/libkmod-module.c:1132:47: branch_true: ...to here
kmod-34.2/libkmod/libkmod-module.c:1151:28: branch_false: following 'false' branch (when 'tmp' is non-NULL)...
kmod-34.2/libkmod/libkmod-module.c:1158:28: branch_false: ...to here
kmod-34.2/libkmod/libkmod-module.c:1158:28: branch_false: following 'false' branch (when 'optslen == 0')...
kmod-34.2/libkmod/libkmod-module.c:1163:32: branch_false: ...to here
kmod-34.2/libkmod/libkmod-module.c:1131:17: branch_true: following 'true' branch (when 'l' is non-NULL)...
kmod-34.2/libkmod/libkmod-module.c:1132:47: branch_true: ...to here
kmod-34.2/libkmod/libkmod-module.c:1132:47: throw: if 'kmod_option_get_modname' throws an exception...
kmod-34.2/libkmod/libkmod-module.c:1132:47: danger: 'tmp' leaks here; was allocated at [(7)](sarif:/runs/0/results/31/codeFlows/0/threadFlows/0/locations/6)
# 1130|   
# 1131|   		kmod_list_foreach(l, config->options) {
# 1132|-> 			const char *modname = kmod_option_get_modname(l);
# 1133|   			const char *str;
# 1134|   			size_t len;

Error: GCC_ANALYZER_WARNING (CWE-401): [#def36]
kmod-34.2/libkmod/libkmod-module.c:1137:25: warning[-Wanalyzer-malloc-leak]: leak of 'tmp'
kmod-34.2/libkmod/libkmod-module.c:1118:12: branch_false: following 'false' branch (when 'mod' is non-NULL)...
kmod-34.2/libkmod/libkmod-module.c:1121:14: branch_false: ...to here
kmod-34.2/libkmod/libkmod-module.c:1121:12: branch_false: following 'false' branch...
kmod-34.2/libkmod/libkmod-module.c:1129:42: branch_false: ...to here
kmod-34.2/libkmod/libkmod-module.c:1131:17: branch_true: following 'true' branch (when 'l' is non-NULL)...
kmod-34.2/libkmod/libkmod-module.c:1132:47: branch_true: ...to here
kmod-34.2/libkmod/libkmod-module.c:1151:28: branch_false: following 'false' branch (when 'tmp' is non-NULL)...
kmod-34.2/libkmod/libkmod-module.c:1158:28: branch_false: ...to here
kmod-34.2/libkmod/libkmod-module.c:1158:28: branch_false: following 'false' branch (when 'optslen == 0')...
kmod-34.2/libkmod/libkmod-module.c:1163:32: branch_false: ...to here
kmod-34.2/libkmod/libkmod-module.c:1131:17: branch_true: following 'true' branch (when 'l' is non-NULL)...
kmod-34.2/libkmod/libkmod-module.c:1132:47: branch_true: ...to here
kmod-34.2/libkmod/libkmod-module.c:1137:25: throw: if 'kmod_get_log_priority' throws an exception...
kmod-34.2/libkmod/libkmod-module.c:1137:25: danger: 'tmp' leaks here; was allocated at [(7)](sarif:/runs/0/results/32/codeFlows/0/threadFlows/0/locations/6)
# 1135|   			void *tmp;
# 1136|   
# 1137|-> 			DBG(mod->ctx, "modname=%s mod->name=%s mod->alias=%s\n", modname,
# 1138|   			    mod->name, mod->alias);
# 1139|   			if (!(streq(modname, mod->name) ||

Error: GCC_ANALYZER_WARNING (CWE-401): [#def37]
kmod-34.2/libkmod/libkmod-module.c:1143:25: warning[-Wanalyzer-malloc-leak]: leak of 'tmp'
kmod-34.2/libkmod/libkmod-module.c:1118:12: branch_false: following 'false' branch (when 'mod' is non-NULL)...
kmod-34.2/libkmod/libkmod-module.c:1121:14: branch_false: ...to here
kmod-34.2/libkmod/libkmod-module.c:1121:12: branch_false: following 'false' branch...
kmod-34.2/libkmod/libkmod-module.c:1129:42: branch_false: ...to here
kmod-34.2/libkmod/libkmod-module.c:1131:17: branch_true: following 'true' branch (when 'l' is non-NULL)...
kmod-34.2/libkmod/libkmod-module.c:1132:47: branch_true: ...to here
kmod-34.2/libkmod/libkmod-module.c:1151:28: branch_false: following 'false' branch (when 'tmp' is non-NULL)...
kmod-34.2/libkmod/libkmod-module.c:1158:28: branch_false: ...to here
kmod-34.2/libkmod/libkmod-module.c:1158:28: branch_false: following 'false' branch (when 'optslen == 0')...
kmod-34.2/libkmod/libkmod-module.c:1163:32: branch_false: ...to here
kmod-34.2/libkmod/libkmod-module.c:1131:17: branch_true: following 'true' branch (when 'l' is non-NULL)...
kmod-34.2/libkmod/libkmod-module.c:1132:47: branch_true: ...to here
kmod-34.2/libkmod/libkmod-module.c:1143:25: throw: if 'kmod_get_log_priority' throws an exception...
kmod-34.2/libkmod/libkmod-module.c:1143:25: danger: 'tmp' leaks here; was allocated at [(7)](sarif:/runs/0/results/34/codeFlows/0/threadFlows/0/locations/6)
# 1141|   				continue;
# 1142|   
# 1143|-> 			DBG(mod->ctx, "passed = modname=%s mod->name=%s mod->alias=%s\n",
# 1144|   			    modname, mod->name, mod->alias);
# 1145|   			str = kmod_option_get_options(l);

Error: GCC_ANALYZER_WARNING (CWE-401): [#def38]
kmod-34.2/libkmod/libkmod-module.c:1145:31: warning[-Wanalyzer-malloc-leak]: leak of 'tmp'
kmod-34.2/libkmod/libkmod-module.c:1118:12: branch_false: following 'false' branch (when 'mod' is non-NULL)...
kmod-34.2/libkmod/libkmod-module.c:1121:14: branch_false: ...to here
kmod-34.2/libkmod/libkmod-module.c:1121:12: branch_false: following 'false' branch...
kmod-34.2/libkmod/libkmod-module.c:1129:42: branch_false: ...to here
kmod-34.2/libkmod/libkmod-module.c:1131:17: branch_true: following 'true' branch (when 'l' is non-NULL)...
kmod-34.2/libkmod/libkmod-module.c:1132:47: branch_true: ...to here
kmod-34.2/libkmod/libkmod-module.c:1151:28: branch_false: following 'false' branch (when 'tmp' is non-NULL)...
kmod-34.2/libkmod/libkmod-module.c:1158:28: branch_false: ...to here
kmod-34.2/libkmod/libkmod-module.c:1158:28: branch_false: following 'false' branch (when 'optslen == 0')...
kmod-34.2/libkmod/libkmod-module.c:1163:32: branch_false: ...to here
kmod-34.2/libkmod/libkmod-module.c:1131:17: branch_true: following 'true' branch (when 'l' is non-NULL)...
kmod-34.2/libkmod/libkmod-module.c:1132:47: branch_true: ...to here
kmod-34.2/libkmod/libkmod-module.c:1145:31: throw: if 'kmod_option_get_options' throws an exception...
kmod-34.2/libkmod/libkmod-module.c:1145:31: danger: 'tmp' leaks here; was allocated at [(7)](sarif:/runs/0/results/36/codeFlows/0/threadFlows/0/locations/6)
# 1143|   			DBG(mod->ctx, "passed = modname=%s mod->name=%s mod->alias=%s\n",
# 1144|   			    modname, mod->name, mod->alias);
# 1145|-> 			str = kmod_option_get_options(l);
# 1146|   			len = strlen(str);
# 1147|   			if (len < 1)

Error: GCC_ANALYZER_WARNING (CWE-775): [#def39]
kmod-34.2/libkmod/libkmod-module.c:1450:15: warning[-Wanalyzer-fd-leak]: leak of file descriptor 'open(&path, 524288)'
kmod-34.2/libkmod/libkmod-module.c:1429:12: branch_false: following 'false' branch (when 'pathlen <= 4095')...
kmod-34.2/libkmod/libkmod-module.c:1433:14: branch_false: ...to here
kmod-34.2/libkmod/libkmod-module.c:1433:14: acquire_resource: opened here
kmod-34.2/libkmod/libkmod-module.c:1434:12: branch_false: following 'false' branch...
kmod-34.2/libkmod/libkmod-module.c:1450:15: branch_false: ...to here
kmod-34.2/libkmod/libkmod-module.c:1450:15: throw: if 'read_str_safe' throws an exception...
kmod-34.2/libkmod/libkmod-module.c:1450:15: danger: 'open(&path, 524288)' leaks here; was opened at [(3)](sarif:/runs/0/results/37/codeFlows/0/threadFlows/0/locations/2)
# 1448|   	}
# 1449|   
# 1450|-> 	err = read_str_safe(fd, buf, sizeof(buf));
# 1451|   	close(fd);
# 1452|   	if (err < 0) {

Error: GCC_ANALYZER_WARNING (CWE-775): [#def40]
kmod-34.2/libkmod/libkmod-module.c:1489:15: warning[-Wanalyzer-fd-leak]: leak of file descriptor 'open(&line, 524288)'
kmod-34.2/libkmod/libkmod-module.c:1476:12: branch_false: following 'false' branch (when 'mod' is non-NULL)...
kmod-34.2/libkmod/libkmod-module.c:1483:56: branch_false: ...to here
kmod-34.2/libkmod/libkmod-module.c:1484:15: acquire_resource: opened here
kmod-34.2/libkmod/libkmod-module.c:1485:12: branch_false: following 'false' branch...
kmod-34.2/libkmod/libkmod-module.c:1489:15: branch_false: ...to here
kmod-34.2/libkmod/libkmod-module.c:1489:15: throw: if 'openat' throws an exception...
kmod-34.2/libkmod/libkmod-module.c:1489:15: danger: 'open(&line, 524288)' leaks here; was opened at [(3)](sarif:/runs/0/results/38/codeFlows/0/threadFlows/0/locations/2)
# 1487|   
# 1488|   	/* available as of linux 3.3.x */
# 1489|-> 	cfd = openat(dfd, "coresize", O_RDONLY | O_CLOEXEC);
# 1490|   	if (cfd >= 0) {
# 1491|   		if (read_str_long(cfd, &size, 10) < 0)

Error: GCC_ANALYZER_WARNING (CWE-775): [#def41]
kmod-34.2/libkmod/libkmod-module.c:1512:37: warning[-Wanalyzer-file-leak]: leak of FILE 'fopen("/proc/modules", "re")'
kmod-34.2/libkmod/libkmod-module.c:1476:12: branch_false: following 'false' branch (when 'mod' is non-NULL)...
kmod-34.2/libkmod/libkmod-module.c:1483:56: branch_false: ...to here
kmod-34.2/libkmod/libkmod-module.c:1485:12: branch_false: following 'false' branch...
kmod-34.2/libkmod/libkmod-module.c:1489:15: branch_false: ...to here
kmod-34.2/libkmod/libkmod-module.c:1490:12: branch_false: following 'false' branch...
kmod-34.2/libkmod/libkmod-module.c:1498:14: branch_false: ...to here
kmod-34.2/libkmod/libkmod-module.c:1498:14: acquire_resource: opened here
kmod-34.2/libkmod/libkmod-module.c:1499:12: branch_false: following 'false' branch...
kmod-34.2/libkmod/libkmod-module.c:1499:12: branch_false: ...to here
kmod-34.2/libkmod/libkmod-module.c:1506:16: branch_true: following 'true' branch...
kmod-34.2/libkmod/libkmod-module.c:1507:30: branch_true: ...to here
kmod-34.2/libkmod/libkmod-module.c:1516:20: branch_true: following 'true' branch (when 'tok' is NULL)...
kmod-34.2/libkmod/libkmod-module.c:1517:25: branch_true: ...to here
kmod-34.2/libkmod/libkmod-module.c:1517:25: throw: if 'kmod_get_log_priority' throws an exception...
kmod-34.2/libkmod/libkmod-module.c:1512:37: danger: 'fopen("/proc/modules", "re")' leaks here; was opened at [(7)](sarif:/runs/0/results/39/codeFlows/0/threadFlows/0/locations/6)
# 1510|   
# 1511|   		lineno++;
# 1512|-> 		if (tok == NULL || !streq(tok, mod->name))
# 1513|   			goto eat_line;
# 1514|   

Error: GCC_ANALYZER_WARNING (CWE-401): [#def42]
kmod-34.2/libkmod/libkmod-module.c:1512:37: warning[-Wanalyzer-malloc-leak]: leak of 'fopen("/proc/modules", "re")'
kmod-34.2/libkmod/libkmod-module.c:1476:12: branch_false: following 'false' branch (when 'mod' is non-NULL)...
kmod-34.2/libkmod/libkmod-module.c:1483:56: branch_false: ...to here
kmod-34.2/libkmod/libkmod-module.c:1485:12: branch_false: following 'false' branch...
kmod-34.2/libkmod/libkmod-module.c:1489:15: branch_false: ...to here
kmod-34.2/libkmod/libkmod-module.c:1490:12: branch_false: following 'false' branch...
kmod-34.2/libkmod/libkmod-module.c:1498:14: branch_false: ...to here
kmod-34.2/libkmod/libkmod-module.c:1498:14: acquire_memory: allocated here
kmod-34.2/libkmod/libkmod-module.c:1499:12: branch_false: following 'false' branch...
kmod-34.2/libkmod/libkmod-module.c:1499:12: branch_false: ...to here
kmod-34.2/libkmod/libkmod-module.c:1506:16: branch_true: following 'true' branch...
kmod-34.2/libkmod/libkmod-module.c:1507:30: branch_true: ...to here
kmod-34.2/libkmod/libkmod-module.c:1516:20: branch_true: following 'true' branch (when 'tok' is NULL)...
kmod-34.2/libkmod/libkmod-module.c:1517:25: branch_true: ...to here
kmod-34.2/libkmod/libkmod-module.c:1517:25: throw: if 'kmod_get_log_priority' throws an exception...
kmod-34.2/libkmod/libkmod-module.c:1512:37: danger: 'fopen("/proc/modules", "re")' leaks here; was allocated at [(7)](sarif:/runs/0/results/40/codeFlows/0/threadFlows/0/locations/6)
# 1510|   
# 1511|   		lineno++;
# 1512|-> 		if (tok == NULL || !streq(tok, mod->name))
# 1513|   			goto eat_line;
# 1514|   

Error: GCC_ANALYZER_WARNING (CWE-775): [#def43]
kmod-34.2/libkmod/libkmod-module.c:1557:15: warning[-Wanalyzer-fd-leak]: leak of file descriptor 'open(&path, 524288)'
kmod-34.2/libkmod/libkmod-module.c:1546:12: branch_false: following 'false' branch (when 'mod' is non-NULL)...
kmod-34.2/libkmod/libkmod-module.c:1549:63: branch_false: ...to here
kmod-34.2/libkmod/libkmod-module.c:1550:14: acquire_resource: opened here
kmod-34.2/libkmod/libkmod-module.c:1551:12: branch_false: following 'false' branch...
kmod-34.2/libkmod/libkmod-module.c:1557:15: branch_false: ...to here
kmod-34.2/libkmod/libkmod-module.c:1557:15: throw: if 'read_str_long' throws an exception...
kmod-34.2/libkmod/libkmod-module.c:1557:15: danger: 'open(&path, 524288)' leaks here; was opened at [(3)](sarif:/runs/0/results/47/codeFlows/0/threadFlows/0/locations/2)
# 1555|   	}
# 1556|   
# 1557|-> 	err = read_str_long(fd, &refcnt, 10);
# 1558|   	close(fd);
# 1559|   	if (err < 0) {

Error: GCC_ANALYZER_WARNING (CWE-401): [#def44]
kmod-34.2/libkmod/libkmod-module.c:1586:21: warning[-Wanalyzer-malloc-leak]: leak of 'opendir(&dname)'
kmod-34.2/libkmod/libkmod-module.c:1575:12: branch_false: following 'false' branch...
kmod-34.2/libkmod/libkmod-module.c:1580:13: acquire_memory: allocated here
kmod-34.2/libkmod/libkmod-module.c:1581:12: branch_false: following 'false' branch...
kmod-34.2/libkmod/libkmod-module.c:1586:21: branch_false: ...to here
kmod-34.2/libkmod/libkmod-module.c:1586:21: throw: if 'readdir' throws an exception...
kmod-34.2/libkmod/libkmod-module.c:1586:21: danger: 'opendir(&dname)' leaks here; was allocated at [(3)](sarif:/runs/0/results/48/codeFlows/0/threadFlows/0/locations/2)
# 1584|   	}
# 1585|   
# 1586|-> 	for (dent = readdir(d); dent != NULL; dent = readdir(d)) {
# 1587|   		struct kmod_module *holder;
# 1588|   		struct kmod_list *l;

Error: GCC_ANALYZER_WARNING (CWE-401): [#def45]
kmod-34.2/libkmod/libkmod-module.c:1654:46: warning[-Wanalyzer-malloc-leak]: leak of 'section'
kmod-34.2/libkmod/libkmod-module.c:1641:12: branch_false: following 'false' branch (when 'mod' is non-NULL)...
kmod-34.2/libkmod/libkmod-module.c:1644:67: branch_false: ...to here
kmod-34.2/libkmod/libkmod-module.c:1647:12: branch_false: following 'false' branch...
kmod-34.2/libkmod/libkmod-module.c:1652:15: branch_false: ...to here
kmod-34.2/libkmod/libkmod-module.c:1654:33: branch_true: following 'true' branch (when 'dent' is non-NULL)...
kmod-34.2/libkmod/libkmod-module.c:1661:21: branch_true: ...to here
kmod-34.2/libkmod/libkmod-module.c:1668:20: branch_false: following 'false' branch...
kmod-34.2/libkmod/libkmod-module.c:1673:23: branch_false: ...to here
kmod-34.2/libkmod/libkmod-module.c:1675:20: branch_false: following 'false' branch...
kmod-34.2/libkmod/libkmod-module.c:1681:26: branch_false: ...to here
kmod-34.2/libkmod/libkmod-module.c:1682:27: acquire_memory: allocated here
kmod-34.2/libkmod/libkmod-module.c:1684:20: branch_false: following 'false' branch (when 'section' is non-NULL)...
kmod-34.2/libkmod/libkmod-module.c:1689:17: branch_false: ...to here
kmod-34.2/libkmod/libkmod-module.c:1693:20: branch_true: following 'true' branch...
kmod-34.2/libkmod/libkmod-module.c:1709:1: branch_true: ...to here
kmod-34.2/libkmod/libkmod-module.c:1654:46: throw: if 'readdir' throws an exception...
kmod-34.2/libkmod/libkmod-module.c:1654:46: danger: 'section' leaks here; was allocated at [(11)](sarif:/runs/0/results/49/codeFlows/0/threadFlows/0/locations/10)
# 1652|   	dfd = dirfd(d);
# 1653|   
# 1654|-> 	for (dent = readdir(d); dent; dent = readdir(d)) {
# 1655|   		struct kmod_module_section *section;
# 1656|   		struct kmod_list *l;

Error: GCC_ANALYZER_WARNING (CWE-401): [#def46]
kmod-34.2/libkmod/libkmod-module.c:1667:22: warning[-Wanalyzer-malloc-leak]: leak of 'section'
kmod-34.2/libkmod/libkmod-module.c:1641:12: branch_false: following 'false' branch (when 'mod' is non-NULL)...
kmod-34.2/libkmod/libkmod-module.c:1644:67: branch_false: ...to here
kmod-34.2/libkmod/libkmod-module.c:1647:12: branch_false: following 'false' branch...
kmod-34.2/libkmod/libkmod-module.c:1652:15: branch_false: ...to here
kmod-34.2/libkmod/libkmod-module.c:1654:33: branch_true: following 'true' branch (when 'dent' is non-NULL)...
kmod-34.2/libkmod/libkmod-module.c:1661:21: branch_true: ...to here
kmod-34.2/libkmod/libkmod-module.c:1668:20: branch_false: following 'false' branch...
kmod-34.2/libkmod/libkmod-module.c:1673:23: branch_false: ...to here
kmod-34.2/libkmod/libkmod-module.c:1675:20: branch_false: following 'false' branch...
kmod-34.2/libkmod/libkmod-module.c:1681:26: branch_false: ...to here
kmod-34.2/libkmod/libkmod-module.c:1682:27: acquire_memory: allocated here
kmod-34.2/libkmod/libkmod-module.c:1684:20: branch_false: following 'false' branch (when 'section' is non-NULL)...
kmod-34.2/libkmod/libkmod-module.c:1689:17: branch_false: ...to here
kmod-34.2/libkmod/libkmod-module.c:1693:20: branch_true: following 'true' branch...
kmod-34.2/libkmod/libkmod-module.c:1709:1: branch_true: ...to here
kmod-34.2/libkmod/libkmod-module.c:1654:33: branch_true: following 'true' branch (when 'dent' is non-NULL)...
kmod-34.2/libkmod/libkmod-module.c:1661:21: branch_true: ...to here
kmod-34.2/libkmod/libkmod-module.c:1667:22: throw: if 'openat' throws an exception...
kmod-34.2/libkmod/libkmod-module.c:1667:22: danger: 'section' leaks here; was allocated at [(11)](sarif:/runs/0/results/50/codeFlows/0/threadFlows/0/locations/10)
# 1665|   		}
# 1666|   
# 1667|-> 		fd = openat(dfd, dent->d_name, O_RDONLY | O_CLOEXEC);
# 1668|   		if (fd < 0) {
# 1669|   			ERR(mod->ctx, "could not open '%s/%s': %m\n", dname, dent->d_name);

Error: GCC_ANALYZER_WARNING (CWE-401): [#def47]
kmod-34.2/libkmod/libkmod-module.c:1669:25: warning[-Wanalyzer-malloc-leak]: leak of 'section'
kmod-34.2/libkmod/libkmod-module.c:1641:12: branch_false: following 'false' branch (when 'mod' is non-NULL)...
kmod-34.2/libkmod/libkmod-module.c:1644:67: branch_false: ...to here
kmod-34.2/libkmod/libkmod-module.c:1647:12: branch_false: following 'false' branch...
kmod-34.2/libkmod/libkmod-module.c:1652:15: branch_false: ...to here
kmod-34.2/libkmod/libkmod-module.c:1654:33: branch_true: following 'true' branch (when 'dent' is non-NULL)...
kmod-34.2/libkmod/libkmod-module.c:1661:21: branch_true: ...to here
kmod-34.2/libkmod/libkmod-module.c:1668:20: branch_false: following 'false' branch...
kmod-34.2/libkmod/libkmod-module.c:1673:23: branch_false: ...to here
kmod-34.2/libkmod/libkmod-module.c:1675:20: branch_false: following 'false' branch...
kmod-34.2/libkmod/libkmod-module.c:1681:26: branch_false: ...to here
kmod-34.2/libkmod/libkmod-module.c:1682:27: acquire_memory: allocated here
kmod-34.2/libkmod/libkmod-module.c:1684:20: branch_false: following 'false' branch (when 'section' is non-NULL)...
kmod-34.2/libkmod/libkmod-module.c:1689:17: branch_false: ...to here
kmod-34.2/libkmod/libkmod-module.c:1693:20: branch_true: following 'true' branch...
kmod-34.2/libkmod/libkmod-module.c:1709:1: branch_true: ...to here
kmod-34.2/libkmod/libkmod-module.c:1654:33: branch_true: following 'true' branch (when 'dent' is non-NULL)...
kmod-34.2/libkmod/libkmod-module.c:1661:21: branch_true: ...to here
kmod-34.2/libkmod/libkmod-module.c:1668:20: branch_true: following 'true' branch...
kmod-34.2/libkmod/libkmod-module.c:1669:25: branch_true: ...to here
kmod-34.2/libkmod/libkmod-module.c:1669:25: throw: if 'kmod_get_log_priority' throws an exception...
kmod-34.2/libkmod/libkmod-module.c:1669:25: danger: 'section' leaks here; was allocated at [(11)](sarif:/runs/0/results/51/codeFlows/0/threadFlows/0/locations/10)
# 1667|   		fd = openat(dfd, dent->d_name, O_RDONLY | O_CLOEXEC);
# 1668|   		if (fd < 0) {
# 1669|-> 			ERR(mod->ctx, "could not open '%s/%s': %m\n", dname, dent->d_name);
# 1670|   			goto fail;
# 1671|   		}

Error: GCC_ANALYZER_WARNING (CWE-401): [#def48]
kmod-34.2/libkmod/libkmod-module.c:1673:23: warning[-Wanalyzer-malloc-leak]: leak of 'section'
kmod-34.2/libkmod/libkmod-module.c:1641:12: branch_false: following 'false' branch (when 'mod' is non-NULL)...
kmod-34.2/libkmod/libkmod-module.c:1644:67: branch_false: ...to here
kmod-34.2/libkmod/libkmod-module.c:1647:12: branch_false: following 'false' branch...
kmod-34.2/libkmod/libkmod-module.c:1652:15: branch_false: ...to here
kmod-34.2/libkmod/libkmod-module.c:1654:33: branch_true: following 'true' branch (when 'dent' is non-NULL)...
kmod-34.2/libkmod/libkmod-module.c:1661:21: branch_true: ...to here
kmod-34.2/libkmod/libkmod-module.c:1668:20: branch_false: following 'false' branch...
kmod-34.2/libkmod/libkmod-module.c:1673:23: branch_false: ...to here
kmod-34.2/libkmod/libkmod-module.c:1675:20: branch_false: following 'false' branch...
kmod-34.2/libkmod/libkmod-module.c:1681:26: branch_false: ...to here
kmod-34.2/libkmod/libkmod-module.c:1682:27: acquire_memory: allocated here
kmod-34.2/libkmod/libkmod-module.c:1684:20: branch_false: following 'false' branch (when 'section' is non-NULL)...
kmod-34.2/libkmod/libkmod-module.c:1689:17: branch_false: ...to here
kmod-34.2/libkmod/libkmod-module.c:1693:20: branch_true: following 'true' branch...
kmod-34.2/libkmod/libkmod-module.c:1709:1: branch_true: ...to here
kmod-34.2/libkmod/libkmod-module.c:1654:33: branch_true: following 'true' branch (when 'dent' is non-NULL)...
kmod-34.2/libkmod/libkmod-module.c:1661:21: branch_true: ...to here
kmod-34.2/libkmod/libkmod-module.c:1668:20: branch_false: following 'false' branch...
kmod-34.2/libkmod/libkmod-module.c:1673:23: branch_false: ...to here
kmod-34.2/libkmod/libkmod-module.c:1673:23: throw: if 'read_str_ulong' throws an exception...
kmod-34.2/libkmod/libkmod-module.c:1673:23: danger: 'section' leaks here; was allocated at [(11)](sarif:/runs/0/results/53/codeFlows/0/threadFlows/0/locations/10)
# 1671|   		}
# 1672|   
# 1673|-> 		err = read_str_ulong(fd, &address, 16);
# 1674|   		close(fd);
# 1675|   		if (err < 0) {

Error: GCC_ANALYZER_WARNING (CWE-401): [#def49]
kmod-34.2/libkmod/libkmod-module.c:1674:17: warning[-Wanalyzer-malloc-leak]: leak of 'section'
kmod-34.2/libkmod/libkmod-module.c:1641:12: branch_false: following 'false' branch (when 'mod' is non-NULL)...
kmod-34.2/libkmod/libkmod-module.c:1644:67: branch_false: ...to here
kmod-34.2/libkmod/libkmod-module.c:1647:12: branch_false: following 'false' branch...
kmod-34.2/libkmod/libkmod-module.c:1652:15: branch_false: ...to here
kmod-34.2/libkmod/libkmod-module.c:1654:33: branch_true: following 'true' branch (when 'dent' is non-NULL)...
kmod-34.2/libkmod/libkmod-module.c:1661:21: branch_true: ...to here
kmod-34.2/libkmod/libkmod-module.c:1668:20: branch_false: following 'false' branch...
kmod-34.2/libkmod/libkmod-module.c:1673:23: branch_false: ...to here
kmod-34.2/libkmod/libkmod-module.c:1675:20: branch_false: following 'false' branch...
kmod-34.2/libkmod/libkmod-module.c:1681:26: branch_false: ...to here
kmod-34.2/libkmod/libkmod-module.c:1682:27: acquire_memory: allocated here
kmod-34.2/libkmod/libkmod-module.c:1684:20: branch_false: following 'false' branch (when 'section' is non-NULL)...
kmod-34.2/libkmod/libkmod-module.c:1689:17: branch_false: ...to here
kmod-34.2/libkmod/libkmod-module.c:1693:20: branch_true: following 'true' branch...
kmod-34.2/libkmod/libkmod-module.c:1709:1: branch_true: ...to here
kmod-34.2/libkmod/libkmod-module.c:1654:33: branch_true: following 'true' branch (when 'dent' is non-NULL)...
kmod-34.2/libkmod/libkmod-module.c:1661:21: branch_true: ...to here
kmod-34.2/libkmod/libkmod-module.c:1668:20: branch_false: following 'false' branch...
kmod-34.2/libkmod/libkmod-module.c:1673:23: branch_false: ...to here
kmod-34.2/libkmod/libkmod-module.c:1674:17: throw: if 'close' throws an exception...
kmod-34.2/libkmod/libkmod-module.c:1674:17: danger: 'section' leaks here; was allocated at [(11)](sarif:/runs/0/results/54/codeFlows/0/threadFlows/0/locations/10)
# 1672|   
# 1673|   		err = read_str_ulong(fd, &address, 16);
# 1674|-> 		close(fd);
# 1675|   		if (err < 0) {
# 1676|   			ERR(mod->ctx, "could not read long from '%s/%s': %m\n", dname,

Error: GCC_ANALYZER_WARNING (CWE-401): [#def50]
kmod-34.2/libkmod/libkmod-module.c:1676:25: warning[-Wanalyzer-malloc-leak]: leak of 'section'
kmod-34.2/libkmod/libkmod-module.c:1641:12: branch_false: following 'false' branch (when 'mod' is non-NULL)...
kmod-34.2/libkmod/libkmod-module.c:1644:67: branch_false: ...to here
kmod-34.2/libkmod/libkmod-module.c:1647:12: branch_false: following 'false' branch...
kmod-34.2/libkmod/libkmod-module.c:1652:15: branch_false: ...to here
kmod-34.2/libkmod/libkmod-module.c:1654:33: branch_true: following 'true' branch (when 'dent' is non-NULL)...
kmod-34.2/libkmod/libkmod-module.c:1661:21: branch_true: ...to here
kmod-34.2/libkmod/libkmod-module.c:1668:20: branch_false: following 'false' branch...
kmod-34.2/libkmod/libkmod-module.c:1673:23: branch_false: ...to here
kmod-34.2/libkmod/libkmod-module.c:1675:20: branch_false: following 'false' branch...
kmod-34.2/libkmod/libkmod-module.c:1681:26: branch_false: ...to here
kmod-34.2/libkmod/libkmod-module.c:1682:27: acquire_memory: allocated here
kmod-34.2/libkmod/libkmod-module.c:1684:20: branch_false: following 'false' branch (when 'section' is non-NULL)...
kmod-34.2/libkmod/libkmod-module.c:1689:17: branch_false: ...to here
kmod-34.2/libkmod/libkmod-module.c:1693:20: branch_true: following 'true' branch...
kmod-34.2/libkmod/libkmod-module.c:1709:1: branch_true: ...to here
kmod-34.2/libkmod/libkmod-module.c:1654:33: branch_true: following 'true' branch (when 'dent' is non-NULL)...
kmod-34.2/libkmod/libkmod-module.c:1661:21: branch_true: ...to here
kmod-34.2/libkmod/libkmod-module.c:1668:20: branch_false: following 'false' branch...
kmod-34.2/libkmod/libkmod-module.c:1673:23: branch_false: ...to here
kmod-34.2/libkmod/libkmod-module.c:1675:20: branch_true: following 'true' branch...
kmod-34.2/libkmod/libkmod-module.c:1676:25: branch_true: ...to here
kmod-34.2/libkmod/libkmod-module.c:1676:25: throw: if 'kmod_get_log_priority' throws an exception...
kmod-34.2/libkmod/libkmod-module.c:1676:25: danger: 'section' leaks here; was allocated at [(11)](sarif:/runs/0/results/55/codeFlows/0/threadFlows/0/locations/10)
# 1674|   		close(fd);
# 1675|   		if (err < 0) {
# 1676|-> 			ERR(mod->ctx, "could not read long from '%s/%s': %m\n", dname,
# 1677|   			    dent->d_name);
# 1678|   			goto fail;

Error: GCC_ANALYZER_WARNING (CWE-401): [#def51]
kmod-34.2/libkmod/libkmod-module.c:1682:27: warning[-Wanalyzer-malloc-leak]: leak of 'section'
kmod-34.2/libkmod/libkmod-module.c:1641:12: branch_false: following 'false' branch (when 'mod' is non-NULL)...
kmod-34.2/libkmod/libkmod-module.c:1644:67: branch_false: ...to here
kmod-34.2/libkmod/libkmod-module.c:1647:12: branch_false: following 'false' branch...
kmod-34.2/libkmod/libkmod-module.c:1652:15: branch_false: ...to here
kmod-34.2/libkmod/libkmod-module.c:1654:33: branch_true: following 'true' branch (when 'dent' is non-NULL)...
kmod-34.2/libkmod/libkmod-module.c:1661:21: branch_true: ...to here
kmod-34.2/libkmod/libkmod-module.c:1668:20: branch_false: following 'false' branch...
kmod-34.2/libkmod/libkmod-module.c:1673:23: branch_false: ...to here
kmod-34.2/libkmod/libkmod-module.c:1675:20: branch_false: following 'false' branch...
kmod-34.2/libkmod/libkmod-module.c:1681:26: branch_false: ...to here
kmod-34.2/libkmod/libkmod-module.c:1682:27: acquire_memory: allocated here
kmod-34.2/libkmod/libkmod-module.c:1684:20: branch_false: following 'false' branch (when 'section' is non-NULL)...
kmod-34.2/libkmod/libkmod-module.c:1689:17: branch_false: ...to here
kmod-34.2/libkmod/libkmod-module.c:1693:20: branch_true: following 'true' branch...
kmod-34.2/libkmod/libkmod-module.c:1709:1: branch_true: ...to here
kmod-34.2/libkmod/libkmod-module.c:1654:33: branch_true: following 'true' branch (when 'dent' is non-NULL)...
kmod-34.2/libkmod/libkmod-module.c:1661:21: branch_true: ...to here
kmod-34.2/libkmod/libkmod-module.c:1668:20: branch_false: following 'false' branch...
kmod-34.2/libkmod/libkmod-module.c:1673:23: branch_false: ...to here
kmod-34.2/libkmod/libkmod-module.c:1675:20: branch_false: following 'false' branch...
kmod-34.2/libkmod/libkmod-module.c:1681:26: branch_false: ...to here
kmod-34.2/libkmod/libkmod-module.c:1682:27: danger: 'section' leaks here; was allocated at [(11)](sarif:/runs/0/results/57/codeFlows/0/threadFlows/0/locations/10)
# 1680|   
# 1681|   		namesz = strlen(dent->d_name) + 1;
# 1682|-> 		section = malloc(sizeof(*section) + namesz);
# 1683|   
# 1684|   		if (section == NULL) {

Error: GCC_ANALYZER_WARNING (CWE-401): [#def52]
kmod-34.2/libkmod/libkmod-module.c:1692:21: warning[-Wanalyzer-malloc-leak]: leak of 'section'
kmod-34.2/libkmod/libkmod-module.c:1641:12: branch_false: following 'false' branch (when 'mod' is non-NULL)...
kmod-34.2/libkmod/libkmod-module.c:1644:67: branch_false: ...to here
kmod-34.2/libkmod/libkmod-module.c:1647:12: branch_false: following 'false' branch...
kmod-34.2/libkmod/libkmod-module.c:1652:15: branch_false: ...to here
kmod-34.2/libkmod/libkmod-module.c:1654:33: branch_true: following 'true' branch (when 'dent' is non-NULL)...
kmod-34.2/libkmod/libkmod-module.c:1661:21: branch_true: ...to here
kmod-34.2/libkmod/libkmod-module.c:1668:20: branch_false: following 'false' branch...
kmod-34.2/libkmod/libkmod-module.c:1673:23: branch_false: ...to here
kmod-34.2/libkmod/libkmod-module.c:1675:20: branch_false: following 'false' branch...
kmod-34.2/libkmod/libkmod-module.c:1681:26: branch_false: ...to here
kmod-34.2/libkmod/libkmod-module.c:1682:27: acquire_memory: allocated here
kmod-34.2/libkmod/libkmod-module.c:1684:20: branch_false: following 'false' branch (when 'section' is non-NULL)...
kmod-34.2/libkmod/libkmod-module.c:1689:17: branch_false: ...to here
kmod-34.2/libkmod/libkmod-module.c:1692:21: throw: if 'kmod_list_append' throws an exception...
kmod-34.2/libkmod/libkmod-module.c:1692:21: danger: 'section' leaks here; was allocated at [(11)](sarif:/runs/0/results/58/codeFlows/0/threadFlows/0/locations/10)
# 1690|   		memcpy(section->name, dent->d_name, namesz);
# 1691|   
# 1692|-> 		l = kmod_list_append(list, section);
# 1693|   		if (l != NULL) {
# 1694|   			list = l;

Error: GCC_ANALYZER_WARNING (CWE-401): [#def53]
kmod-34.2/libkmod/libkmod-module.c:1696:25: warning[-Wanalyzer-malloc-leak]: leak of 'section'
kmod-34.2/libkmod/libkmod-module.c:1641:12: branch_false: following 'false' branch (when 'mod' is non-NULL)...
kmod-34.2/libkmod/libkmod-module.c:1644:67: branch_false: ...to here
kmod-34.2/libkmod/libkmod-module.c:1647:12: branch_false: following 'false' branch...
kmod-34.2/libkmod/libkmod-module.c:1652:15: branch_false: ...to here
kmod-34.2/libkmod/libkmod-module.c:1654:33: branch_true: following 'true' branch (when 'dent' is non-NULL)...
kmod-34.2/libkmod/libkmod-module.c:1661:21: branch_true: ...to here
kmod-34.2/libkmod/libkmod-module.c:1668:20: branch_false: following 'false' branch...
kmod-34.2/libkmod/libkmod-module.c:1673:23: branch_false: ...to here
kmod-34.2/libkmod/libkmod-module.c:1675:20: branch_false: following 'false' branch...
kmod-34.2/libkmod/libkmod-module.c:1681:26: branch_false: ...to here
kmod-34.2/libkmod/libkmod-module.c:1682:27: acquire_memory: allocated here
kmod-34.2/libkmod/libkmod-module.c:1684:20: branch_false: following 'false' branch (when 'section' is non-NULL)...
kmod-34.2/libkmod/libkmod-module.c:1689:17: branch_false: ...to here
kmod-34.2/libkmod/libkmod-module.c:1693:20: branch_false: following 'false' branch...
kmod-34.2/libkmod/libkmod-module.c:1696:25: branch_false: ...to here
kmod-34.2/libkmod/libkmod-module.c:1696:25: throw: if 'kmod_get_log_priority' throws an exception...
kmod-34.2/libkmod/libkmod-module.c:1696:25: danger: 'section' leaks here; was allocated at [(11)](sarif:/runs/0/results/60/codeFlows/0/threadFlows/0/locations/10)
# 1694|   			list = l;
# 1695|   		} else {
# 1696|-> 			ERR(mod->ctx, "out of memory\n");
# 1697|   			free(section);
# 1698|   			goto fail;

Error: GCC_ANALYZER_WARNING (CWE-401): [#def54]
kmod-34.2/libkmod/libkmod-module.c:1702:9: warning[-Wanalyzer-malloc-leak]: leak of 'section'
kmod-34.2/libkmod/libkmod-module.c:1641:12: branch_false: following 'false' branch (when 'mod' is non-NULL)...
kmod-34.2/libkmod/libkmod-module.c:1644:67: branch_false: ...to here
kmod-34.2/libkmod/libkmod-module.c:1647:12: branch_false: following 'false' branch...
kmod-34.2/libkmod/libkmod-module.c:1652:15: branch_false: ...to here
kmod-34.2/libkmod/libkmod-module.c:1654:33: branch_true: following 'true' branch (when 'dent' is non-NULL)...
kmod-34.2/libkmod/libkmod-module.c:1661:21: branch_true: ...to here
kmod-34.2/libkmod/libkmod-module.c:1668:20: branch_false: following 'false' branch...
kmod-34.2/libkmod/libkmod-module.c:1673:23: branch_false: ...to here
kmod-34.2/libkmod/libkmod-module.c:1675:20: branch_false: following 'false' branch...
kmod-34.2/libkmod/libkmod-module.c:1681:26: branch_false: ...to here
kmod-34.2/libkmod/libkmod-module.c:1682:27: acquire_memory: allocated here
kmod-34.2/libkmod/libkmod-module.c:1684:20: branch_false: following 'false' branch (when 'section' is non-NULL)...
kmod-34.2/libkmod/libkmod-module.c:1689:17: branch_false: ...to here
kmod-34.2/libkmod/libkmod-module.c:1693:20: branch_true: following 'true' branch...
kmod-34.2/libkmod/libkmod-module.c:1709:1: branch_true: ...to here
kmod-34.2/libkmod/libkmod-module.c:1702:9: throw: if 'closedir' throws an exception...
kmod-34.2/libkmod/libkmod-module.c:1702:9: danger: 'section' leaks here; was allocated at [(11)](sarif:/runs/0/results/62/codeFlows/0/threadFlows/0/locations/10)
# 1700|   	}
# 1701|   
# 1702|-> 	closedir(d);
# 1703|   	return list;
# 1704|   

Error: GCC_ANALYZER_WARNING (CWE-401): [#def55]
kmod-34.2/libkmod/libkmod-module.c:1706:9: warning[-Wanalyzer-malloc-leak]: leak of 'section'
kmod-34.2/libkmod/libkmod-module.c:1641:12: branch_false: following 'false' branch (when 'mod' is non-NULL)...
kmod-34.2/libkmod/libkmod-module.c:1644:67: branch_false: ...to here
kmod-34.2/libkmod/libkmod-module.c:1647:12: branch_false: following 'false' branch...
kmod-34.2/libkmod/libkmod-module.c:1652:15: branch_false: ...to here
kmod-34.2/libkmod/libkmod-module.c:1654:33: branch_true: following 'true' branch (when 'dent' is non-NULL)...
kmod-34.2/libkmod/libkmod-module.c:1661:21: branch_true: ...to here
kmod-34.2/libkmod/libkmod-module.c:1668:20: branch_false: following 'false' branch...
kmod-34.2/libkmod/libkmod-module.c:1673:23: branch_false: ...to here
kmod-34.2/libkmod/libkmod-module.c:1675:20: branch_false: following 'false' branch...
kmod-34.2/libkmod/libkmod-module.c:1681:26: branch_false: ...to here
kmod-34.2/libkmod/libkmod-module.c:1682:27: acquire_memory: allocated here
kmod-34.2/libkmod/libkmod-module.c:1684:20: branch_false: following 'false' branch (when 'section' is non-NULL)...
kmod-34.2/libkmod/libkmod-module.c:1689:17: branch_false: ...to here
kmod-34.2/libkmod/libkmod-module.c:1693:20: branch_true: following 'true' branch...
kmod-34.2/libkmod/libkmod-module.c:1709:1: branch_true: ...to here
kmod-34.2/libkmod/libkmod-module.c:1654:33: branch_true: following 'true' branch (when 'dent' is non-NULL)...
kmod-34.2/libkmod/libkmod-module.c:1661:21: branch_true: ...to here
kmod-34.2/libkmod/libkmod-module.c:1706:9: throw: if 'closedir' throws an exception...
kmod-34.2/libkmod/libkmod-module.c:1706:9: danger: 'section' leaks here; was allocated at [(11)](sarif:/runs/0/results/63/codeFlows/0/threadFlows/0/locations/10)
# 1704|   
# 1705|   fail:
# 1706|-> 	closedir(d);
# 1707|   	kmod_module_unref_list(list);
# 1708|   	return NULL;

Error: GCC_ANALYZER_WARNING (CWE-401): [#def56]
kmod-34.2/libkmod/libkmod-module.c:1766:23: warning[-Wanalyzer-malloc-leak]: leak of 'kmod_module_info_new(key,  keylen,  value,  valuelen)'
kmod-34.2/libkmod/libkmod-module.c:1783:26: enter_function: entry to 'kmod_module_info_append'
kmod-34.2/libkmod/libkmod-module.c:1790:16: call_function: calling 'kmod_module_info_new' from 'kmod_module_info_append'
kmod-34.2/libkmod/libkmod-module.c:1790:16: return_function: returning to 'kmod_module_info_append' from 'kmod_module_info_new'
kmod-34.2/libkmod/libkmod-module.c:1791:12: branch_false: following 'false' branch...
kmod-34.2/libkmod/libkmod-module.c:1793:13: branch_false: ...to here
kmod-34.2/libkmod/libkmod-module.c:1793:13: throw: if 'kmod_list_append' throws an exception...
kmod-34.2/libkmod/libkmod-module.c:1766:23: danger: 'kmod_module_info_new(key,  keylen,  value,  valuelen)' leaks here; was allocated at [(4)](sarif:/runs/0/results/64/codeFlows/0/threadFlows/0/locations/3)
# 1764|   	struct kmod_module_info *info;
# 1765|   
# 1766|-> 	info = malloc(sizeof(struct kmod_module_info) + keylen + valuelen + 2);
# 1767|   	if (info == NULL)
# 1768|   		return NULL;

Error: GCC_ANALYZER_WARNING (CWE-688): [#def57]
kmod-34.2/libkmod/libkmod-module.c:1773:9: warning[-Wanalyzer-null-argument]: use of NULL 'value' where non-null expected
kmod-34.2/libkmod/libkmod-module.c:1827:26: enter_function: entry to 'kmod_module_info_append_hex'
kmod-34.2/libkmod/libkmod-module.c:1834:12: branch_false: following 'false' branch (when 'valuelen == 0')...
kmod-34.2/libkmod/libkmod-module.c:1844:21: branch_false: ...to here
kmod-34.2/libkmod/libkmod-module.c:1844:21: call_function: calling 'kmod_module_info_append' from 'kmod_module_info_append_hex'
# 1771|   	memcpy(info->key, key, keylen);
# 1772|   	info->key[keylen] = '\0';
# 1773|-> 	memcpy(info->value, value, valuelen);
# 1774|   	info->value[valuelen] = '\0';
# 1775|   	return info;

Error: COMPILER_WARNING (CWE-457): [#def58]
kmod-34.2/libkmod/libkmod-module.c: scope_hint: In function 'kmod_module_get_info'
kmod-34.2/libkmod/libkmod-module.c:1859:16: warning[-Wmaybe-uninitialized]: 'strings' may be used uninitialized
# 1859 |         char **strings;
#      |                ^
# 1857|   {
# 1858|   	struct kmod_elf *elf;
# 1859|-> 	char **strings;
# 1860|   	int i, count, ret = -ENOMEM;
# 1861|   	struct kmod_signature_info sig_info = {};

Error: GCC_ANALYZER_WARNING (CWE-401): [#def59]
kmod-34.2/libkmod/libkmod-signature.c:226:9: warning[-Wanalyzer-malloc-leak]: leak of 'key_id_str'
kmod-34.2/libkmod/libkmod-signature.c:188:12: branch_false: following 'false' branch...
kmod-34.2/libkmod/libkmod-signature.c:193:9: branch_false: ...to here
kmod-34.2/libkmod/libkmod-signature.c:196:12: branch_false: following 'false' branch...
kmod-34.2/libkmod/libkmod-signature.c:199:14: branch_false: ...to here
kmod-34.2/libkmod/libkmod-signature.c:200:12: branch_false: following 'false' branch...
kmod-34.2/libkmod/libkmod-signature.c:203:9: branch_false: ...to here
kmod-34.2/libkmod/libkmod-signature.c:204:12: branch_false: following 'false' branch (when 'is' is non-NULL)...
kmod-34.2/libkmod/libkmod-signature.c:206:9: branch_false: ...to here
kmod-34.2/libkmod/libkmod-signature.c:210:12: branch_false: following 'false' branch (when 'sig' is non-NULL)...
kmod-34.2/libkmod/libkmod-signature.c:213:9: branch_false: ...to here
kmod-34.2/libkmod/libkmod-signature.c:219:12: branch_false: following 'false' branch...
kmod-34.2/libkmod/libkmod-signature.c:222:15: branch_false: ...to here
kmod-34.2/libkmod/libkmod-signature.c:223:22: acquire_memory: allocated here
kmod-34.2/libkmod/libkmod-signature.c:224:12: branch_false: following 'false' branch (when 'key_id_str' is non-NULL)...
kmod-34.2/libkmod/libkmod-signature.c:226:9: branch_false: ...to here
kmod-34.2/libkmod/libkmod-signature.c:226:9: throw: if 'BN_bn2bin' throws an exception...
kmod-34.2/libkmod/libkmod-signature.c:226:9: danger: 'key_id_str' leaks here; was allocated at [(13)](sarif:/runs/0/results/0/codeFlows/0/threadFlows/0/locations/12)
#  224|   	if (key_id_str == NULL)
#  225|   		goto err2;
#  226|-> 	BN_bn2bin(sno_bn, key_id_str);
#  227|   
#  228|   	sig_info->key_id = (const char *)key_id_str;

Error: GCC_ANALYZER_WARNING (CWE-404): [#def60]
kmod-34.2/libkmod/libkmod.c:79:9: warning[-Wanalyzer-va-list-leak]: missing call to 'va_end'
kmod-34.2/libkmod/libkmod.c:75:12: branch_false: following 'false' branch...
kmod-34.2/libkmod/libkmod.c:78:9: branch_false: ...to here
kmod-34.2/libkmod/libkmod.c:78:9: acquire_resource: 'va_start' called here
kmod-34.2/libkmod/libkmod.c:79:9: throw: if the called function throws an exception...
kmod-34.2/libkmod/libkmod.c:79:9: danger: missing call to 'va_end' to match 'va_start' at [(3)](sarif:/runs/0/results/0/codeFlows/0/threadFlows/0/locations/2)
#   77|   
#   78|   	va_start(args, format);
#   79|-> 	ctx->log_fn(ctx->log_data, priority, file, line, fn, format, args);
#   80|   	va_end(args);
#   81|   }

Error: GCC_ANALYZER_WARNING (CWE-401): [#def61]
kmod-34.2/libkmod/libkmod.c:173:24: warning[-Wanalyzer-malloc-leak]: leak of 'ctx'
kmod-34.2/libkmod/libkmod.c:217:30: enter_function: entry to 'kmod_new'
kmod-34.2/libkmod/libkmod.c:223:15: acquire_memory: allocated here
kmod-34.2/libkmod/libkmod.c:224:12: branch_false: following 'false' branch (when 'ctx' is non-NULL)...
kmod-34.2/libkmod/libkmod.c:227:9: branch_false: ...to here
kmod-34.2/libkmod/libkmod.c:232:24: call_function: calling 'get_kernel_release' from 'kmod_new'
#  171|   
#  172|   	if (dirname != NULL)
#  173|-> 		return path_make_absolute_cwd(dirname);
#  174|   
#  175|   	if (uname(&u) < 0)

Error: GCC_ANALYZER_WARNING (CWE-401): [#def62]
kmod-34.2/libkmod/libkmod.c:191:14: warning[-Wanalyzer-malloc-leak]: leak of 'ctx'
kmod-34.2/libkmod/libkmod.c:217:30: enter_function: entry to 'kmod_new'
kmod-34.2/libkmod/libkmod.c:223:15: acquire_memory: allocated here
kmod-34.2/libkmod/libkmod.c:224:12: branch_false: following 'false' branch (when 'ctx' is non-NULL)...
kmod-34.2/libkmod/libkmod.c:227:9: branch_false: ...to here
kmod-34.2/libkmod/libkmod.c:233:12: branch_false: following 'false' branch...
kmod-34.2/libkmod/libkmod.c:239:15: branch_false: ...to here
kmod-34.2/libkmod/libkmod.c:243:35: call_function: calling 'get_kernel_compression' from 'kmod_new'
#  189|   	int err;
#  190|   
#  191|-> 	fd = open(path, O_RDONLY | O_CLOEXEC);
#  192|   	if (fd < 0) {
#  193|   		/* Not having the file is not an error: kernel may be too old */

Error: GCC_ANALYZER_WARNING (CWE-775): [#def63]
kmod-34.2/libkmod/libkmod.c:198:15: warning[-Wanalyzer-fd-leak]: leak of file descriptor 'open("/sys/module/compression", 524288)'
kmod-34.2/libkmod/libkmod.c:191:14: acquire_resource: opened here
kmod-34.2/libkmod/libkmod.c:192:12: branch_false: following 'false' branch...
kmod-34.2/libkmod/libkmod.c:198:15: branch_false: ...to here
kmod-34.2/libkmod/libkmod.c:198:15: throw: if 'read_str_safe' throws an exception...
kmod-34.2/libkmod/libkmod.c:198:15: danger: 'open("/sys/module/compression", 524288)' leaks here; was opened at [(1)](sarif:/runs/0/results/3/codeFlows/0/threadFlows/0/locations/0)
#  196|   	}
#  197|   
#  198|-> 	err = read_str_safe(fd, buf, sizeof(buf));
#  199|   	close(fd);
#  200|   	if (err < 0) {

Error: GCC_ANALYZER_WARNING (CWE-401): [#def64]
kmod-34.2/libkmod/libkmod.c:198:15: warning[-Wanalyzer-malloc-leak]: leak of 'ctx'
kmod-34.2/libkmod/libkmod.c:217:30: enter_function: entry to 'kmod_new'
kmod-34.2/libkmod/libkmod.c:223:15: acquire_memory: allocated here
kmod-34.2/libkmod/libkmod.c:224:12: branch_false: following 'false' branch (when 'ctx' is non-NULL)...
kmod-34.2/libkmod/libkmod.c:227:9: branch_false: ...to here
kmod-34.2/libkmod/libkmod.c:233:12: branch_false: following 'false' branch...
kmod-34.2/libkmod/libkmod.c:239:15: branch_false: ...to here
kmod-34.2/libkmod/libkmod.c:243:35: call_function: calling 'get_kernel_compression' from 'kmod_new'
#  196|   	}
#  197|   
#  198|-> 	err = read_str_safe(fd, buf, sizeof(buf));
#  199|   	close(fd);
#  200|   	if (err < 0) {

Error: GCC_ANALYZER_WARNING (CWE-401): [#def65]
kmod-34.2/libkmod/libkmod.c:199:9: warning[-Wanalyzer-malloc-leak]: leak of 'ctx'
kmod-34.2/libkmod/libkmod.c:217:30: enter_function: entry to 'kmod_new'
kmod-34.2/libkmod/libkmod.c:223:15: acquire_memory: allocated here
kmod-34.2/libkmod/libkmod.c:224:12: branch_false: following 'false' branch (when 'ctx' is non-NULL)...
kmod-34.2/libkmod/libkmod.c:227:9: branch_false: ...to here
kmod-34.2/libkmod/libkmod.c:233:12: branch_false: following 'false' branch...
kmod-34.2/libkmod/libkmod.c:239:15: branch_false: ...to here
kmod-34.2/libkmod/libkmod.c:243:35: call_function: calling 'get_kernel_compression' from 'kmod_new'
#  197|   
#  198|   	err = read_str_safe(fd, buf, sizeof(buf));
#  199|-> 	close(fd);
#  200|   	if (err < 0) {
#  201|   		ERR(ctx, "could not read from '%s': %s\n", path, strerror(-err));

Error: GCC_ANALYZER_WARNING (CWE-401): [#def66]
kmod-34.2/libkmod/libkmod.c:247:15: warning[-Wanalyzer-malloc-leak]: leak of 'ctx'
kmod-34.2/libkmod/libkmod.c:223:15: acquire_memory: allocated here
kmod-34.2/libkmod/libkmod.c:224:12: branch_false: following 'false' branch (when 'ctx' is non-NULL)...
kmod-34.2/libkmod/libkmod.c:227:9: branch_false: ...to here
kmod-34.2/libkmod/libkmod.c:233:12: branch_false: following 'false' branch...
kmod-34.2/libkmod/libkmod.c:239:15: branch_false: ...to here
kmod-34.2/libkmod/libkmod.c:247:15: throw: if 'kmod_config_new' throws an exception...
kmod-34.2/libkmod/libkmod.c:247:15: danger: 'ctx' leaks here; was allocated at [(1)](sarif:/runs/0/results/6/codeFlows/0/threadFlows/0/locations/0)
#  245|   	if (config_paths == NULL)
#  246|   		config_paths = default_config_paths;
#  247|-> 	err = kmod_config_new(ctx, &ctx->config, config_paths);
#  248|   	if (err < 0) {
#  249|   		ERR(ctx, "could not create config\n");

Error: GCC_ANALYZER_WARNING (CWE-415): [#def67]
kmod-34.2/shared/macro.h:69:9: warning[-Wanalyzer-double-free]: double-'free' of 'p'
kmod-34.2/libkmod/libkmod-file-zlib.c:65:12: branch_false: following 'false' branch...
kmod-34.2/libkmod/libkmod-file-zlib.c:68:15: branch_false: ...to here
kmod-34.2/libkmod/libkmod-file-zlib.c:69:12: branch_false: following 'false' branch...
kmod-34.2/libkmod/libkmod-file-zlib.c:69:12: branch_false: ...to here
kmod-34.2/libkmod/libkmod-file-zlib.c:77:20: branch_true: following 'true' branch (when 'did == total')...
kmod-34.2/libkmod/libkmod-file-zlib.c:78:48: branch_true: ...to here
kmod-34.2/libkmod/libkmod-file-zlib.c:79:28: branch_false: following 'false' branch (when 'tmp' is non-NULL)...
kmod-34.2/libkmod/libkmod-file-zlib.c:87:21: branch_false: ...to here
kmod-34.2/libkmod/libkmod-file-zlib.c:50:39: call_function: inlined call to 'freep' from 'kmod_file_load_zlib'
#   67|   static inline void freep(void *p)
#   68|   {
#   69|-> 	free(*(void **)p);
#   70|   }
#   71|   #define _cleanup_free_ _cleanup_(freep)

Error: GCC_ANALYZER_WARNING (CWE-457): [#def68]
kmod-34.2/shared/macro.h:69:9: warning[-Wanalyzer-use-of-uninitialized-value]: use of uninitialized value 'alias'
kmod-34.2/libkmod/libkmod-config.c:774:12: enter_function: entry to 'kmod_config_parse'
kmod-34.2/libkmod/libkmod-config.c:783:12: branch_false: following 'false' branch (when 'fp' is non-NULL)...
kmod-34.2/libkmod/libkmod-config.c:783:12: branch_false: ...to here
kmod-34.2/libkmod/libkmod-config.c:790:16: branch_true: following 'true' branch...
kmod-34.2/libkmod/libkmod-config.c:793:21: branch_true: ...to here
kmod-34.2/libkmod/libkmod-config.c:797:20: branch_false: following 'false' branch (when 'cmd' is non-NULL)...
kmod-34.2/libkmod/libkmod-config.c:800:21: branch_false: ...to here
kmod-34.2/libkmod/libkmod-config.c:800:20: branch_true: following 'true' branch (when the strings are equal)...
kmod-34.2/libkmod/libkmod-config.c:801:39: branch_true: ...to here
kmod-34.2/libkmod/libkmod-config.c:804:28: branch_false: following 'false' branch...
kmod-34.2/libkmod/libkmod-config.c:807:25: call_function: calling 'kmod_config_add_alias' from 'kmod_config_parse'
#   67|   static inline void freep(void *p)
#   68|   {
#   69|-> 	free(*(void **)p);
#   70|   }
#   71|   #define _cleanup_free_ _cleanup_(freep)

Error: GCC_ANALYZER_WARNING (CWE-457): [#def69]
kmod-34.2/shared/macro.h:69:9: warning[-Wanalyzer-use-of-uninitialized-value]: use of uninitialized value 'cmd'
kmod-34.2/libkmod/libkmod-config.c:774:12: enter_function: entry to 'kmod_config_parse'
kmod-34.2/libkmod/libkmod-config.c:783:12: branch_false: following 'false' branch (when 'fp' is non-NULL)...
kmod-34.2/libkmod/libkmod-config.c:783:12: branch_false: ...to here
kmod-34.2/libkmod/libkmod-config.c:790:16: branch_true: following 'true' branch...
kmod-34.2/libkmod/libkmod-config.c:793:21: branch_true: ...to here
kmod-34.2/libkmod/libkmod-config.c:797:20: branch_false: following 'false' branch (when 'cmd' is non-NULL)...
kmod-34.2/libkmod/libkmod-config.c:800:21: branch_false: ...to here
kmod-34.2/libkmod/libkmod-config.c:800:20: branch_false: following 'false' branch (when the strings are non-equal)...
kmod-34.2/libkmod/libkmod-config.c:808:28: branch_false: ...to here
kmod-34.2/libkmod/libkmod-config.c:808:27: branch_false: following 'false' branch (when the strings are non-equal)...
kmod-34.2/libkmod/libkmod-config.c:815:28: branch_false: ...to here
kmod-34.2/libkmod/libkmod-config.c:815:27: branch_false: following 'false' branch (when the strings are non-equal)...
kmod-34.2/libkmod/libkmod-config.c:823:28: branch_false: ...to here
kmod-34.2/libkmod/libkmod-config.c:823:27: branch_true: following 'true' branch (when the strings are equal)...
kmod-34.2/libkmod/libkmod-config.c:824:41: branch_true: ...to here
kmod-34.2/libkmod/libkmod-config.c:827:28: branch_false: following 'false' branch...
kmod-34.2/libkmod/libkmod-config.c:830:25: call_function: calling 'kmod_config_add_command' from 'kmod_config_parse'
#   67|   static inline void freep(void *p)
#   68|   {
#   69|-> 	free(*(void **)p);
#   70|   }
#   71|   #define _cleanup_free_ _cleanup_(freep)

Error: GCC_ANALYZER_WARNING (CWE-457): [#def70]
kmod-34.2/shared/macro.h:69:9: warning[-Wanalyzer-use-of-uninitialized-value]: use of uninitialized value 'opt'
kmod-34.2/libkmod/libkmod-config.c:612:13: enter_function: entry to 'kcmdline_parse_result'
kmod-34.2/libkmod/libkmod-config.c:615:12: branch_false: following 'false' branch...
kmod-34.2/libkmod/libkmod-config.c:618:9: branch_false: ...to here
kmod-34.2/libkmod/libkmod-config.c:629:20: branch_false: following 'false' branch...
kmod-34.2/libkmod/libkmod-config.c:634:25: branch_false: ...to here
kmod-34.2/libkmod/libkmod-config.c:634:25: call_function: calling 'kmod_config_add_options' from 'kcmdline_parse_result'
#   67|   static inline void freep(void *p)
#   68|   {
#   69|-> 	free(*(void **)p);
#   70|   }
#   71|   #define _cleanup_free_ _cleanup_(freep)

Error: GCC_ANALYZER_WARNING (CWE-457): [#def71]
kmod-34.2/shared/macro.h:69:9: warning[-Wanalyzer-use-of-uninitialized-value]: use of uninitialized value 'p'
kmod-34.2/libkmod/libkmod-config.c:774:12: enter_function: entry to 'kmod_config_parse'
kmod-34.2/libkmod/libkmod-config.c:783:12: branch_false: following 'false' branch (when 'fp' is non-NULL)...
kmod-34.2/libkmod/libkmod-config.c:783:12: branch_false: ...to here
kmod-34.2/libkmod/libkmod-config.c:790:16: branch_true: following 'true' branch...
kmod-34.2/libkmod/libkmod-config.c:793:21: branch_true: ...to here
kmod-34.2/libkmod/libkmod-config.c:797:20: branch_false: following 'false' branch (when 'cmd' is non-NULL)...
kmod-34.2/libkmod/libkmod-config.c:800:21: branch_false: ...to here
kmod-34.2/libkmod/libkmod-config.c:800:20: branch_false: following 'false' branch (when the strings are non-equal)...
kmod-34.2/libkmod/libkmod-config.c:808:28: branch_false: ...to here
kmod-34.2/libkmod/libkmod-config.c:808:27: branch_true: following 'true' branch (when the strings are equal)...
kmod-34.2/libkmod/libkmod-config.c:809:41: branch_true: ...to here
kmod-34.2/libkmod/libkmod-config.c:811:28: branch_false: following 'false' branch...
kmod-34.2/libkmod/libkmod-config.c:814:25: branch_false: ...to here
kmod-34.2/libkmod/libkmod-config.c:814:25: call_function: calling 'kmod_config_add_blacklist' from 'kmod_config_parse'
#   67|   static inline void freep(void *p)
#   68|   {
#   69|-> 	free(*(void **)p);
#   70|   }
#   71|   #define _cleanup_free_ _cleanup_(freep)

Error: GCC_ANALYZER_WARNING (CWE-457): [#def72]
kmod-34.2/shared/macro.h:69:9: warning[-Wanalyzer-use-of-uninitialized-value]: use of uninitialized value ‘config_paths’
kmod-34.2/tools/depmod.c:2938:20: branch_false: following ‘false’ branch (when ‘c != -1’)...
kmod-34.2/tools/depmod.c:2940:17: branch_false: ...to here
kmod-34.2/tools/depmod.c:3016:25: throw: if ‘log_printf’ throws an exception...
kmod-34.2/tools/depmod.c:2921:37: call_function: inlined call to ‘freep’ from ‘do_depmod’
#   67|   static inline void freep(void *p)
#   68|   {
#   69|-> 	free(*(void **)p);
#   70|   }
#   71|   #define _cleanup_free_ _cleanup_(freep)

Error: GCC_ANALYZER_WARNING (CWE-457): [#def73]
kmod-34.2/shared/macro.h:69:9: warning[-Wanalyzer-use-of-uninitialized-value]: use of uninitialized value ‘stack’
kmod-34.2/tools/depmod.c:1992:12: enter_function: entry to ‘depmod_calculate_dependencies’
kmod-34.2/tools/depmod.c:2000:12: branch_false: following ‘false’ branch (when ‘users’ is non-NULL)...
kmod-34.2/tools/depmod.c:2002:23: branch_false: ...to here
kmod-34.2/tools/depmod.c:2007:9: branch_true: following ‘true’ branch...
kmod-34.2/tools/depmod.c:2010:9: branch_true: ...to here
kmod-34.2/tools/depmod.c:2021:16: branch_false: following ‘false’ branch (when ‘n_roots == 0’)...
kmod-34.2/tools/depmod.c:2048:12: branch_false: ...to here
kmod-34.2/tools/depmod.c:2048:12: branch_true: following ‘true’ branch (when ‘n_sorted < n_mods’)...
kmod-34.2/tools/depmod.c:2049:17: branch_true: ...to here
kmod-34.2/tools/depmod.c:2049:17: call_function: calling ‘depmod_report_cycles’ from ‘depmod_calculate_dependencies’
#   67|   static inline void freep(void *p)
#   68|   {
#   69|-> 	free(*(void **)p);
#   70|   }
#   71|   #define _cleanup_free_ _cleanup_(freep)

Error: COMPILER_WARNING (CWE-457): [#def74]
kmod-34.2/shared/macro.h:69:9: warning[-Wmaybe-uninitialized]: 'alias' may be used uninitialized
#   69 |         free(*(void **)p);
#      |         ^~~~~~~~~~~~~~~~~
kmod-34.2/libkmod/libkmod-config.c: scope_hint: In function 'kmod_config_new'
kmod-34.2/libkmod/libkmod-config.c:188:43: note: 'alias' was declared here
#  188 |         _cleanup_free_ struct kmod_alias *alias;
#      |                                           ^~~~~
#   67|   static inline void freep(void *p)
#   68|   {
#   69|-> 	free(*(void **)p);
#   70|   }
#   71|   #define _cleanup_free_ _cleanup_(freep)

Error: COMPILER_WARNING (CWE-457): [#def75]
kmod-34.2/shared/macro.h:69:9: warning[-Wmaybe-uninitialized]: 'cmd' may be used uninitialized
#   69 |         free(*(void **)p);
#      |         ^~~~~~~~~~~~~~~~~
kmod-34.2/libkmod/libkmod-config.c: scope_hint: In function 'kmod_config_add_command.isra.0'
kmod-34.2/libkmod/libkmod-config.c:130:45: note: 'cmd' was declared here
#  130 |         _cleanup_free_ struct kmod_command *cmd;
#      |                                             ^~~
#   67|   static inline void freep(void *p)
#   68|   {
#   69|-> 	free(*(void **)p);
#   70|   }
#   71|   #define _cleanup_free_ _cleanup_(freep)

Error: COMPILER_WARNING (CWE-457): [#def76]
kmod-34.2/shared/macro.h:69:9: warning[-Wmaybe-uninitialized]: 'opt' may be used uninitialized
#   69 |         free(*(void **)p);
#      |         ^~~~~~~~~~~~~~~~~
kmod-34.2/libkmod/libkmod-config.c: scope_hint: In function 'kmod_config_add_options.isra.0'
kmod-34.2/libkmod/libkmod-config.c:158:45: note: 'opt' was declared here
#  158 |         _cleanup_free_ struct kmod_options *opt;
#      |                                             ^~~
#   67|   static inline void freep(void *p)
#   68|   {
#   69|-> 	free(*(void **)p);
#   70|   }
#   71|   #define _cleanup_free_ _cleanup_(freep)

Error: COMPILER_WARNING (CWE-457): [#def77]
kmod-34.2/shared/macro.h:69:9: warning[-Wmaybe-uninitialized]: 'p' may be used uninitialized
#   69 |         free(*(void **)p);
#      |         ^~~~~~~~~~~~~~~~~
kmod-34.2/libkmod/libkmod-config.c: scope_hint: In function 'kmod_config_add_blacklist.isra.0'
kmod-34.2/libkmod/libkmod-config.c:215:30: note: 'p' was declared here
#  215 |         _cleanup_free_ char *p;
#      |                              ^
#   67|   static inline void freep(void *p)
#   68|   {
#   69|-> 	free(*(void **)p);
#   70|   }
#   71|   #define _cleanup_free_ _cleanup_(freep)

Error: GCC_ANALYZER_WARNING (CWE-401): [#def78]
kmod-34.2/shared/strbuf.h:75:16: warning[-Wanalyzer-malloc-leak]: leak of ‘<unknown>’
kmod-34.2/tools/depmod.c:2158:12: enter_function: entry to ‘output_deps_bin’
kmod-34.2/tools/depmod.c:2168:15: call_function: calling ‘index_create’ from ‘output_deps_bin’
kmod-34.2/tools/depmod.c:2168:15: return_function: returning to ‘output_deps_bin’ from ‘index_create’
kmod-34.2/tools/depmod.c:2169:12: branch_false: following ‘false’ branch...
kmod-34.2/tools/depmod.c:2172:9: branch_false: ...to here
kmod-34.2/tools/depmod.c:2175:21: branch_true: following ‘true’ branch...
kmod-34.2/tools/depmod.c:2176:41: branch_true: ...to here
kmod-34.2/tools/depmod.c:2182:22: call_function: calling ‘mod_get_all_sorted_dependencies’ from ‘output_deps_bin’
kmod-34.2/tools/depmod.c:2182:22: return_function: returning to ‘output_deps_bin’ from ‘mod_get_all_sorted_dependencies’
kmod-34.2/tools/depmod.c:2182:20: branch_true: following ‘true’ branch...
kmod-34.2/tools/depmod.c:2187:17: branch_true: ...to here
kmod-34.2/tools/depmod.c:2188:22: call_function: calling ‘strbuf_pushchars’ from ‘output_deps_bin’
#   73|   static inline size_t strbuf_pushchars(struct strbuf *buf, const char *str)
#   74|   {
#   75|-> 	return strbuf_pushmem(buf, str, strlen(str));
#   76|   }
#   77|   

Error: COMPILER_WARNING (CWE-704): [#def79]
kmod-34.2/shared/util.c: scope_hint: In function 'mkdir_parents'
kmod-34.2/shared/util.c:470:21: warning[-Wdiscarded-qualifiers]: initialization discards 'const' qualifier from pointer target type
#  470 |         char *end = strrchr(path, '/');
#      |                     ^~~~~~~
#  468|   int mkdir_parents(const char *path, mode_t mode)
#  469|   {
#  470|-> 	char *end = strrchr(path, '/');
#  471|   
#  472|   	/* no parent directories */

Error: COMPILER_WARNING (CWE-704): [#def80]
kmod-34.2/shared/util.c:470:21: warning[-Wdiscarded-qualifiers]: initialization discards 'const' qualifier from pointer target type
#  468|   int mkdir_parents(const char *path, mode_t mode)
#  469|   {
#  470|-> 	char *end = strrchr(path, '/');
#  471|   
#  472|   	/* no parent directories */

Error: GCC_ANALYZER_WARNING (CWE-401): [#def81]
kmod-34.2/tools/depmod.c:212:25: warning[-Wanalyzer-malloc-leak]: leak of ‘<unknown>’
kmod-34.2/tools/depmod.c:2236:12: enter_function: entry to ‘output_aliases_bin’
kmod-34.2/tools/depmod.c:2244:15: call_function: calling ‘index_create’ from ‘output_aliases_bin’
kmod-34.2/tools/depmod.c:2244:15: return_function: returning to ‘output_aliases_bin’ from ‘index_create’
kmod-34.2/tools/depmod.c:2245:12: branch_false: following ‘false’ branch...
kmod-34.2/tools/depmod.c:2245:12: branch_false: ...to here
kmod-34.2/tools/depmod.c:2248:21: branch_true: following ‘true’ branch...
kmod-34.2/tools/depmod.c:2249:41: branch_true: ...to here
kmod-34.2/tools/depmod.c:2264:37: call_function: calling ‘index_insert’ from ‘output_aliases_bin’
#  210|   
#  211|   		if (ch >= INDEX_CHILDMAX)
#  212|-> 			CRIT("Module index: bad character '%c'=0x%x - only 7-bit ASCII is supported:"
#  213|   			     "\n%s\n",
#  214|   			     (char)ch, (int)ch, str);

Error: GCC_ANALYZER_WARNING (CWE-401): [#def82]
kmod-34.2/tools/depmod.c:269:37: warning[-Wanalyzer-malloc-leak]: leak of ‘<unknown>’
kmod-34.2/tools/depmod.c:2236:12: enter_function: entry to ‘output_aliases_bin’
kmod-34.2/tools/depmod.c:2244:15: call_function: calling ‘index_create’ from ‘output_aliases_bin’
kmod-34.2/tools/depmod.c:2244:15: return_function: returning to ‘output_aliases_bin’ from ‘index_create’
kmod-34.2/tools/depmod.c:2245:12: branch_false: following ‘false’ branch...
kmod-34.2/tools/depmod.c:2245:12: branch_false: ...to here
kmod-34.2/tools/depmod.c:2248:21: branch_true: following ‘true’ branch...
kmod-34.2/tools/depmod.c:2249:41: branch_true: ...to here
kmod-34.2/tools/depmod.c:2264:37: call_function: calling ‘index_insert’ from ‘output_aliases_bin’
#  267|   
#  268|   				/* New child is copy of node with prefix[j+1..N] */
#  269|-> 				n = memdup(node, sizeof(struct index_node));
#  270|   				if (n == NULL)
#  271|   					fatal_oom();

Error: GCC_ANALYZER_WARNING (CWE-401): [#def83]
kmod-34.2/tools/depmod.c:830:17: warning[-Wanalyzer-malloc-leak]: leak of ‘f’
kmod-34.2/tools/depmod.c:2915:12: enter_function: entry to ‘do_depmod’
kmod-34.2/tools/depmod.c:2938:20: branch_false: following ‘false’ branch (when ‘c != -1’)...
kmod-34.2/tools/depmod.c:2940:17: branch_false: ...to here
kmod-34.2/tools/depmod.c:2962:28: branch_false: following ‘false’ branch...
kmod-34.2/tools/depmod.c:3166:1: branch_false: ...to here
kmod-34.2/tools/depmod.c:2938:20: branch_true: following ‘true’ branch (when ‘c == -1’)...
kmod-34.2/tools/depmod.c:3166:1: branch_true: ...to here
kmod-34.2/tools/depmod.c:3029:20: branch_false: following ‘false’ branch...
kmod-34.2/tools/depmod.c:3033:17: branch_false: ...to here
kmod-34.2/tools/depmod.c:3037:16: branch_true: following ‘true’ branch...
kmod-34.2/tools/depmod.c:3038:17: branch_true: ...to here
kmod-34.2/tools/depmod.c:3037:16: branch_false: following ‘false’ branch...
kmod-34.2/tools/depmod.c:3040:26: branch_false: ...to here
kmod-34.2/tools/depmod.c:3042:12: branch_false: following ‘false’ branch...
kmod-34.2/tools/depmod.c:3048:29: branch_false: ...to here
kmod-34.2/tools/depmod.c:3048:29: branch_true: following ‘true’ branch (when ‘out_root’ is non-NULL)...
kmod-34.2/tools/depmod.c:3048:29: branch_true: ...to here
kmod-34.2/tools/depmod.c:3050:12: branch_false: following ‘false’ branch...
kmod-34.2/tools/depmod.c:3056:13: branch_false: ...to here
kmod-34.2/tools/depmod.c:3059:12: branch_false: following ‘false’ branch (when ‘maybe_all == 0’)...
kmod-34.2/tools/depmod.c:3068:15: branch_false: ...to here
kmod-34.2/tools/depmod.c:3069:12: branch_false: following ‘false’ branch...
kmod-34.2/tools/depmod.c:3074:9: branch_false: ...to here
kmod-34.2/tools/depmod.c:3076:15: call_function: calling ‘depmod_init’ from ‘do_depmod’
kmod-34.2/tools/depmod.c:3076:15: return_function: returning to ‘do_depmod’ from ‘depmod_init’
kmod-34.2/tools/depmod.c:3077:12: branch_false: following ‘false’ branch...
kmod-34.2/tools/depmod.c:3083:12: branch_false: ...to here
kmod-34.2/tools/depmod.c:3083:12: branch_false: following ‘false’ branch (when ‘module_symvers’ is NULL)...
kmod-34.2/tools/depmod.c:3089:19: branch_false: ...to here
kmod-34.2/tools/depmod.c:3089:19: branch_false: following ‘false’ branch (when ‘system_map’ is NULL)...
kmod-34.2/tools/depmod.c:3095:20: branch_false: ...to here
kmod-34.2/tools/depmod.c:3100:12: branch_true: following ‘true’ branch (when ‘all != 0’)...
kmod-34.2/tools/depmod.c:3101:23: branch_true: ...to here
kmod-34.2/tools/depmod.c:3101:23: call_function: calling ‘cfg_load’ from ‘do_depmod’
#  828|   	tmp = realloc(files, sizeof(struct cfg_file *) * (n_files + 1));
#  829|   	if (tmp == NULL) {
#  830|-> 		ERR("files insert sorted: out of memory\n");
#  831|   		free(f);
#  832|   		return -ENOMEM;

Error: GCC_ANALYZER_WARNING (CWE-401): [#def84]
kmod-34.2/tools/depmod.c:881:21: warning[-Wanalyzer-malloc-leak]: leak of ‘opendir(path)’
kmod-34.2/tools/depmod.c:2915:12: enter_function: entry to ‘do_depmod’
kmod-34.2/tools/depmod.c:2938:20: branch_false: following ‘false’ branch (when ‘c != -1’)...
kmod-34.2/tools/depmod.c:2940:17: branch_false: ...to here
kmod-34.2/tools/depmod.c:2962:28: branch_false: following ‘false’ branch...
kmod-34.2/tools/depmod.c:3166:1: branch_false: ...to here
kmod-34.2/tools/depmod.c:2938:20: branch_true: following ‘true’ branch (when ‘c == -1’)...
kmod-34.2/tools/depmod.c:3166:1: branch_true: ...to here
kmod-34.2/tools/depmod.c:3029:20: branch_false: following ‘false’ branch...
kmod-34.2/tools/depmod.c:3033:17: branch_false: ...to here
kmod-34.2/tools/depmod.c:3037:16: branch_true: following ‘true’ branch...
kmod-34.2/tools/depmod.c:3038:17: branch_true: ...to here
kmod-34.2/tools/depmod.c:3037:16: branch_false: following ‘false’ branch...
kmod-34.2/tools/depmod.c:3040:26: branch_false: ...to here
kmod-34.2/tools/depmod.c:3042:12: branch_false: following ‘false’ branch...
kmod-34.2/tools/depmod.c:3048:29: branch_false: ...to here
kmod-34.2/tools/depmod.c:3048:29: branch_true: following ‘true’ branch (when ‘out_root’ is non-NULL)...
kmod-34.2/tools/depmod.c:3048:29: branch_true: ...to here
kmod-34.2/tools/depmod.c:3050:12: branch_false: following ‘false’ branch...
kmod-34.2/tools/depmod.c:3056:13: branch_false: ...to here
kmod-34.2/tools/depmod.c:3059:12: branch_false: following ‘false’ branch (when ‘maybe_all == 0’)...
kmod-34.2/tools/depmod.c:3068:15: branch_false: ...to here
kmod-34.2/tools/depmod.c:3069:12: branch_false: following ‘false’ branch...
kmod-34.2/tools/depmod.c:3074:9: branch_false: ...to here
kmod-34.2/tools/depmod.c:3076:15: call_function: calling ‘depmod_init’ from ‘do_depmod’
kmod-34.2/tools/depmod.c:3076:15: return_function: returning to ‘do_depmod’ from ‘depmod_init’
kmod-34.2/tools/depmod.c:3077:12: branch_false: following ‘false’ branch...
kmod-34.2/tools/depmod.c:3083:12: branch_false: ...to here
kmod-34.2/tools/depmod.c:3083:12: branch_false: following ‘false’ branch (when ‘module_symvers’ is NULL)...
kmod-34.2/tools/depmod.c:3089:19: branch_false: ...to here
kmod-34.2/tools/depmod.c:3089:19: branch_false: following ‘false’ branch (when ‘system_map’ is NULL)...
kmod-34.2/tools/depmod.c:3095:20: branch_false: ...to here
kmod-34.2/tools/depmod.c:3100:12: branch_true: following ‘true’ branch (when ‘all != 0’)...
kmod-34.2/tools/depmod.c:3101:23: branch_true: ...to here
kmod-34.2/tools/depmod.c:3101:23: call_function: calling ‘cfg_load’ from ‘do_depmod’
#  879|   	}
#  880|   
#  881|-> 	for (dent = readdir(d); dent != NULL; dent = readdir(d)) {
#  882|   		if (cfg_files_filter_out(d, path, dent->d_name))
#  883|   			continue;

Error: GCC_ANALYZER_WARNING (CWE-401): [#def85]
kmod-34.2/tools/depmod.c:1108:9: warning[-Wanalyzer-malloc-leak]: leak of ‘mod’
kmod-34.2/tools/depmod.c:2915:12: enter_function: entry to ‘do_depmod’
kmod-34.2/tools/depmod.c:2938:20: branch_false: following ‘false’ branch (when ‘c != -1’)...
kmod-34.2/tools/depmod.c:2940:17: branch_false: ...to here
kmod-34.2/tools/depmod.c:2962:28: branch_false: following ‘false’ branch...
kmod-34.2/tools/depmod.c:3166:1: branch_false: ...to here
kmod-34.2/tools/depmod.c:2938:20: branch_true: following ‘true’ branch (when ‘c == -1’)...
kmod-34.2/tools/depmod.c:3166:1: branch_true: ...to here
kmod-34.2/tools/depmod.c:3029:20: branch_false: following ‘false’ branch...
kmod-34.2/tools/depmod.c:3033:17: branch_false: ...to here
kmod-34.2/tools/depmod.c:3037:16: branch_true: following ‘true’ branch...
kmod-34.2/tools/depmod.c:3038:17: branch_true: ...to here
kmod-34.2/tools/depmod.c:3037:16: branch_false: following ‘false’ branch...
kmod-34.2/tools/depmod.c:3040:26: branch_false: ...to here
kmod-34.2/tools/depmod.c:3042:12: branch_false: following ‘false’ branch...
kmod-34.2/tools/depmod.c:3048:29: branch_false: ...to here
kmod-34.2/tools/depmod.c:3048:29: branch_true: following ‘true’ branch (when ‘out_root’ is non-NULL)...
kmod-34.2/tools/depmod.c:3048:29: branch_true: ...to here
kmod-34.2/tools/depmod.c:3050:12: branch_false: following ‘false’ branch...
kmod-34.2/tools/depmod.c:3056:13: branch_false: ...to here
kmod-34.2/tools/depmod.c:3059:12: branch_false: following ‘false’ branch (when ‘maybe_all == 0’)...
kmod-34.2/tools/depmod.c:3068:15: branch_false: ...to here
kmod-34.2/tools/depmod.c:3069:12: branch_false: following ‘false’ branch...
kmod-34.2/tools/depmod.c:3074:9: branch_false: ...to here
kmod-34.2/tools/depmod.c:3076:15: call_function: calling ‘depmod_init’ from ‘do_depmod’
kmod-34.2/tools/depmod.c:3076:15: return_function: returning to ‘do_depmod’ from ‘depmod_init’
kmod-34.2/tools/depmod.c:3077:12: branch_false: following ‘false’ branch...
kmod-34.2/tools/depmod.c:3083:12: branch_false: ...to here
kmod-34.2/tools/depmod.c:3083:12: branch_false: following ‘false’ branch (when ‘module_symvers’ is NULL)...
kmod-34.2/tools/depmod.c:3089:19: branch_false: ...to here
kmod-34.2/tools/depmod.c:3089:19: branch_false: following ‘false’ branch (when ‘system_map’ is NULL)...
kmod-34.2/tools/depmod.c:3095:20: branch_false: ...to here
kmod-34.2/tools/depmod.c:3095:19: branch_false: following ‘false’ branch...
kmod-34.2/tools/depmod.c:3100:12: branch_false: ...to here
kmod-34.2/tools/depmod.c:3100:12: branch_false: following ‘false’ branch (when ‘all == 0’)...
kmod-34.2/tools/depmod.c:3114:22: branch_false: ...to here
kmod-34.2/tools/depmod.c:3114:34: branch_true: following ‘true’ branch (when ‘i < argc’)...
kmod-34.2/tools/depmod.c:3115:48: branch_true: ...to here
kmod-34.2/tools/depmod.c:3118:28: branch_false: following ‘false’ branch...
kmod-34.2/tools/depmod.c:3123:31: branch_false: ...to here
kmod-34.2/tools/depmod.c:3124:28: branch_false: following ‘false’ branch...
kmod-34.2/tools/depmod.c:3130:31: branch_false: ...to here
kmod-34.2/tools/depmod.c:3130:31: call_function: calling ‘depmod_module_add’ from ‘do_depmod’
# 1106|   	mod->modnamesz = modnamesz;
# 1107|   
# 1108|-> 	array_init(&mod->alias_values, 32); // fits ~80%, ~5% are in the xxx+
# 1109|   	array_init(&mod->softdep_values, 8); // fits ~95%, the rest are sub 16
# 1110|   	array_init(&mod->weakdep_values, 4); // fits 100%

Error: GCC_ANALYZER_WARNING (CWE-775): [#def86]
kmod-34.2/tools/depmod.c:1505:14: warning[-Wanalyzer-fd-leak]: leak of file descriptor ‘open(dname, 0)’
kmod-34.2/tools/depmod.c:2390:12: enter_function: entry to ‘output_builtin_bin’
kmod-34.2/tools/depmod.c:2399:14: call_function: calling ‘dfdopen’ from ‘output_builtin_bin’
# 1503|   	}
# 1504|   
# 1505|-> 	fd = openat(dfd, filename, flags);
# 1506|   	if (fd < 0) {
# 1507|   		WRN("could not open %s at %s: %m\n", filename, dname);

Error: GCC_ANALYZER_WARNING (CWE-401): [#def87]
kmod-34.2/tools/depmod.c:1516:9: warning[-Wanalyzer-malloc-leak]: leak of ‘ret’
kmod-34.2/tools/depmod.c:2390:12: enter_function: entry to ‘output_builtin_bin’
kmod-34.2/tools/depmod.c:2399:14: call_function: calling ‘dfdopen’ from ‘output_builtin_bin’
# 1514|   		}
# 1515|   	}
# 1516|-> 	close(dfd);
# 1517|   	return ret;
# 1518|   }

Error: GCC_ANALYZER_WARNING (CWE-775): [#def88]
kmod-34.2/tools/depmod.c:1574:22: warning[-Wanalyzer-file-leak]: leak of FILE ‘fopen(filename, "r")’
kmod-34.2/tools/depmod.c:2694:12: enter_function: entry to ‘depmod_load_symvers’
kmod-34.2/tools/depmod.c:2700:14: acquire_resource: opened here
kmod-34.2/tools/depmod.c:2701:12: branch_false: following ‘false’ branch...
kmod-34.2/tools/depmod.c:2706:9: branch_false: ...to here
kmod-34.2/tools/depmod.c:2734:9: call_function: calling ‘depmod_add_fake_syms’ from ‘depmod_load_symvers’
# 1572|   
# 1573|   	namelen = strlen(name) + 1;
# 1574|-> 	sym = malloc(sizeof(struct symbol) + namelen);
# 1575|   	if (sym == NULL)
# 1576|   		return -ENOMEM;

Error: GCC_ANALYZER_WARNING (CWE-401): [#def89]
kmod-34.2/tools/depmod.c:1574:22: warning[-Wanalyzer-malloc-leak]: leak of ‘fopen(filename, "r")’
kmod-34.2/tools/depmod.c:2694:12: enter_function: entry to ‘depmod_load_symvers’
kmod-34.2/tools/depmod.c:2700:14: acquire_memory: allocated here
kmod-34.2/tools/depmod.c:2701:12: branch_false: following ‘false’ branch...
kmod-34.2/tools/depmod.c:2706:9: branch_false: ...to here
kmod-34.2/tools/depmod.c:2734:9: call_function: calling ‘depmod_add_fake_syms’ from ‘depmod_load_symvers’
# 1572|   
# 1573|   	namelen = strlen(name) + 1;
# 1574|-> 	sym = malloc(sizeof(struct symbol) + namelen);
# 1575|   	if (sym == NULL)
# 1576|   		return -ENOMEM;

Error: GCC_ANALYZER_WARNING (CWE-401): [#def90]
kmod-34.2/tools/depmod.c:1582:15: warning[-Wanalyzer-malloc-leak]: leak of ‘sym’
kmod-34.2/tools/depmod.c:2683:13: enter_function: entry to ‘depmod_add_fake_syms’
kmod-34.2/tools/depmod.c:2686:9: call_function: calling ‘depmod_symbol_add’ from ‘depmod_add_fake_syms’
# 1580|   	memcpy(sym->name, name, namelen);
# 1581|   
# 1582|-> 	err = hash_add(depmod->symbols, sym->name, sym);
# 1583|   	if (err < 0) {
# 1584|   		free(sym);

Error: GCC_ANALYZER_WARNING (CWE-401): [#def91]
kmod-34.2/tools/depmod.c:1588:9: warning[-Wanalyzer-malloc-leak]: leak of ‘sym’
kmod-34.2/tools/depmod.c:2683:13: enter_function: entry to ‘depmod_add_fake_syms’
kmod-34.2/tools/depmod.c:2686:9: call_function: calling ‘depmod_symbol_add’ from ‘depmod_add_fake_syms’
# 1586|   	}
# 1587|   
# 1588|-> 	DBG("add %p sym=%s, owner=%p %s\n", sym, sym->name, owner,
# 1589|   	    owner != NULL ? owner->path : "");
# 1590|   

Error: GCC_ANALYZER_WARNING (CWE-401): [#def92]
kmod-34.2/tools/depmod.c:1752:25: warning[-Wanalyzer-malloc-leak]: leak of ‘users’
kmod-34.2/tools/depmod.c:1992:12: enter_function: entry to ‘depmod_calculate_dependencies’
kmod-34.2/tools/depmod.c:1999:17: acquire_memory: allocated here
kmod-34.2/tools/depmod.c:2000:12: branch_false: following ‘false’ branch (when ‘users’ is non-NULL)...
kmod-34.2/tools/depmod.c:2002:23: branch_false: ...to here
kmod-34.2/tools/depmod.c:2007:9: branch_true: following ‘true’ branch...
kmod-34.2/tools/depmod.c:2010:9: branch_true: ...to here
kmod-34.2/tools/depmod.c:2021:16: branch_false: following ‘false’ branch (when ‘n_roots == 0’)...
kmod-34.2/tools/depmod.c:2048:12: branch_false: ...to here
kmod-34.2/tools/depmod.c:2048:12: branch_false: following ‘false’ branch (when ‘n_sorted >= n_mods’)...
kmod-34.2/tools/depmod.c:2054:9: branch_false: ...to here
kmod-34.2/tools/depmod.c:2054:9: call_function: calling ‘depmod_sort_dependencies’ from ‘depmod_calculate_dependencies’
# 1750|   		struct mod *m = *itr;
# 1751|   		if (m->deps.count > 1)
# 1752|-> 			array_sort(&m->deps, dep_cmp);
# 1753|   	}
# 1754|   }

Error: GCC_ANALYZER_WARNING (CWE-401): [#def93]
kmod-34.2/tools/depmod.c:1778:13: warning[-Wanalyzer-malloc-leak]: leak of ‘buf’
kmod-34.2/tools/depmod.c:1992:12: enter_function: entry to ‘depmod_calculate_dependencies’
kmod-34.2/tools/depmod.c:2000:12: branch_false: following ‘false’ branch (when ‘users’ is non-NULL)...
kmod-34.2/tools/depmod.c:2002:23: branch_false: ...to here
kmod-34.2/tools/depmod.c:2007:9: branch_true: following ‘true’ branch...
kmod-34.2/tools/depmod.c:2010:9: branch_true: ...to here
kmod-34.2/tools/depmod.c:2021:16: branch_false: following ‘false’ branch (when ‘n_roots == 0’)...
kmod-34.2/tools/depmod.c:2048:12: branch_false: ...to here
kmod-34.2/tools/depmod.c:2048:12: branch_true: following ‘true’ branch (when ‘n_sorted < n_mods’)...
kmod-34.2/tools/depmod.c:2049:17: branch_true: ...to here
kmod-34.2/tools/depmod.c:2049:17: call_function: calling ‘depmod_report_cycles’ from ‘depmod_calculate_dependencies’
# 1776|   	struct kmod_list *l;
# 1777|   
# 1778|-> 	l = kmod_list_remove_data(*list, data);
# 1779|   	*list = l;
# 1780|   }

Error: GCC_ANALYZER_WARNING (CWE-401): [#def94]
kmod-34.2/tools/depmod.c:1830:9: warning[-Wanalyzer-malloc-leak]: leak of ‘buf’
kmod-34.2/tools/depmod.c:1992:12: enter_function: entry to ‘depmod_calculate_dependencies’
kmod-34.2/tools/depmod.c:2000:12: branch_false: following ‘false’ branch (when ‘users’ is non-NULL)...
kmod-34.2/tools/depmod.c:2002:23: branch_false: ...to here
kmod-34.2/tools/depmod.c:2007:9: branch_true: following ‘true’ branch...
kmod-34.2/tools/depmod.c:2010:9: branch_true: ...to here
kmod-34.2/tools/depmod.c:2021:16: branch_false: following ‘false’ branch (when ‘n_roots == 0’)...
kmod-34.2/tools/depmod.c:2048:12: branch_false: ...to here
kmod-34.2/tools/depmod.c:2048:12: branch_true: following ‘true’ branch (when ‘n_sorted < n_mods’)...
kmod-34.2/tools/depmod.c:2049:17: branch_true: ...to here
kmod-34.2/tools/depmod.c:2049:17: call_function: calling ‘depmod_report_cycles’ from ‘depmod_calculate_dependencies’
# 1828|   	}
# 1829|   	strcpy(buf + sz, vertex->mod->modname);
# 1830|-> 	ERR("Cycle detected: %s\n", buf);
# 1831|   
# 1832|   	free(buf);

Error: GCC_ANALYZER_WARNING (CWE-401): [#def95]
kmod-34.2/tools/depmod.c:1859:13: warning[-Wanalyzer-malloc-leak]: leak of ‘v’
kmod-34.2/tools/depmod.c:1992:12: enter_function: entry to ‘depmod_calculate_dependencies’
kmod-34.2/tools/depmod.c:2000:12: branch_false: following ‘false’ branch (when ‘users’ is non-NULL)...
kmod-34.2/tools/depmod.c:2002:23: branch_false: ...to here
kmod-34.2/tools/depmod.c:2007:9: branch_true: following ‘true’ branch...
kmod-34.2/tools/depmod.c:2010:9: branch_true: ...to here
kmod-34.2/tools/depmod.c:2021:16: branch_false: following ‘false’ branch (when ‘n_roots == 0’)...
kmod-34.2/tools/depmod.c:2048:12: branch_false: ...to here
kmod-34.2/tools/depmod.c:2048:12: branch_true: following ‘true’ branch (when ‘n_sorted < n_mods’)...
kmod-34.2/tools/depmod.c:2049:17: branch_true: ...to here
kmod-34.2/tools/depmod.c:2049:17: call_function: calling ‘depmod_report_cycles’ from ‘depmod_calculate_dependencies’
# 1857|   	}
# 1858|   
# 1859|-> 	l = kmod_list_append(free_list, root);
# 1860|   	if (l == NULL) {
# 1861|   		ERR("No memory to report cycles\n");

Error: GCC_ANALYZER_WARNING (CWE-401): [#def96]
kmod-34.2/tools/depmod.c:1861:17: warning[-Wanalyzer-malloc-leak]: leak of ‘v’
kmod-34.2/tools/depmod.c:1992:12: enter_function: entry to ‘depmod_calculate_dependencies’
kmod-34.2/tools/depmod.c:2000:12: branch_false: following ‘false’ branch (when ‘users’ is non-NULL)...
kmod-34.2/tools/depmod.c:2002:23: branch_false: ...to here
kmod-34.2/tools/depmod.c:2007:9: branch_true: following ‘true’ branch...
kmod-34.2/tools/depmod.c:2010:9: branch_true: ...to here
kmod-34.2/tools/depmod.c:2021:16: branch_false: following ‘false’ branch (when ‘n_roots == 0’)...
kmod-34.2/tools/depmod.c:2048:12: branch_false: ...to here
kmod-34.2/tools/depmod.c:2048:12: branch_true: following ‘true’ branch (when ‘n_sorted < n_mods’)...
kmod-34.2/tools/depmod.c:2049:17: branch_true: ...to here
kmod-34.2/tools/depmod.c:2049:17: call_function: calling ‘depmod_report_cycles’ from ‘depmod_calculate_dependencies’
# 1859|   	l = kmod_list_append(free_list, root);
# 1860|   	if (l == NULL) {
# 1861|-> 		ERR("No memory to report cycles\n");
# 1862|   		free(root);
# 1863|   		goto out;

Error: GCC_ANALYZER_WARNING (CWE-401): [#def97]
kmod-34.2/tools/depmod.c:1964:20: warning[-Wanalyzer-malloc-leak]: leak of ‘malloc(n_r * 8)’
kmod-34.2/tools/depmod.c:1992:12: enter_function: entry to ‘depmod_calculate_dependencies’
kmod-34.2/tools/depmod.c:2000:12: branch_false: following ‘false’ branch (when ‘users’ is non-NULL)...
kmod-34.2/tools/depmod.c:2002:23: branch_false: ...to here
kmod-34.2/tools/depmod.c:2007:9: branch_true: following ‘true’ branch...
kmod-34.2/tools/depmod.c:2010:9: branch_true: ...to here
kmod-34.2/tools/depmod.c:2021:16: branch_false: following ‘false’ branch (when ‘n_roots == 0’)...
kmod-34.2/tools/depmod.c:2048:12: branch_false: ...to here
kmod-34.2/tools/depmod.c:2048:12: branch_true: following ‘true’ branch (when ‘n_sorted < n_mods’)...
kmod-34.2/tools/depmod.c:2049:17: branch_true: ...to here
kmod-34.2/tools/depmod.c:2049:17: call_function: calling ‘depmod_report_cycles’ from ‘depmod_calculate_dependencies’
# 1962|   	}
# 1963|   
# 1964|-> 	loop_set = hash_new(16, NULL);
# 1965|   	if (loop_set == NULL) {
# 1966|   		ERR("No memory to report cycles\n");

Error: GCC_ANALYZER_WARNING (CWE-401): [#def98]
kmod-34.2/tools/depmod.c:1966:17: warning[-Wanalyzer-malloc-leak]: leak of ‘malloc(n_r * 8)’
kmod-34.2/tools/depmod.c:1992:12: enter_function: entry to ‘depmod_calculate_dependencies’
kmod-34.2/tools/depmod.c:2000:12: branch_false: following ‘false’ branch (when ‘users’ is non-NULL)...
kmod-34.2/tools/depmod.c:2002:23: branch_false: ...to here
kmod-34.2/tools/depmod.c:2007:9: branch_true: following ‘true’ branch...
kmod-34.2/tools/depmod.c:2010:9: branch_true: ...to here
kmod-34.2/tools/depmod.c:2021:16: branch_false: following ‘false’ branch (when ‘n_roots == 0’)...
kmod-34.2/tools/depmod.c:2048:12: branch_false: ...to here
kmod-34.2/tools/depmod.c:2048:12: branch_true: following ‘true’ branch (when ‘n_sorted < n_mods’)...
kmod-34.2/tools/depmod.c:2049:17: branch_true: ...to here
kmod-34.2/tools/depmod.c:2049:17: call_function: calling ‘depmod_report_cycles’ from ‘depmod_calculate_dependencies’
# 1964|   	loop_set = hash_new(16, NULL);
# 1965|   	if (loop_set == NULL) {
# 1966|-> 		ERR("No memory to report cycles\n");
# 1967|   		goto out_list;
# 1968|   	}

Error: GCC_ANALYZER_WARNING (CWE-401): [#def99]
kmod-34.2/tools/depmod.c:1970:16: warning[-Wanalyzer-malloc-leak]: leak of ‘malloc(n_r * 8)’
kmod-34.2/tools/depmod.c:1992:12: enter_function: entry to ‘depmod_calculate_dependencies’
kmod-34.2/tools/depmod.c:2000:12: branch_false: following ‘false’ branch (when ‘users’ is non-NULL)...
kmod-34.2/tools/depmod.c:2002:23: branch_false: ...to here
kmod-34.2/tools/depmod.c:2007:9: branch_true: following ‘true’ branch...
kmod-34.2/tools/depmod.c:2010:9: branch_true: ...to here
kmod-34.2/tools/depmod.c:2021:16: branch_false: following ‘false’ branch (when ‘n_roots == 0’)...
kmod-34.2/tools/depmod.c:2048:12: branch_false: ...to here
kmod-34.2/tools/depmod.c:2048:12: branch_true: following ‘true’ branch (when ‘n_sorted < n_mods’)...
kmod-34.2/tools/depmod.c:2049:17: branch_true: ...to here
kmod-34.2/tools/depmod.c:2049:17: call_function: calling ‘depmod_report_cycles’ from ‘depmod_calculate_dependencies’
# 1968|   	}
# 1969|   
# 1970|-> 	while (roots != NULL) {
# 1971|   		root = roots->data;
# 1972|   		l = kmod_list_remove(roots);

Error: GCC_ANALYZER_WARNING (CWE-401): [#def100]
kmod-34.2/tools/depmod.c:1974:23: warning[-Wanalyzer-malloc-leak]: leak of ‘<unknown>’
kmod-34.2/tools/depmod.c:1992:12: enter_function: entry to ‘depmod_calculate_dependencies’
kmod-34.2/tools/depmod.c:2000:12: branch_false: following ‘false’ branch (when ‘users’ is non-NULL)...
kmod-34.2/tools/depmod.c:2002:23: branch_false: ...to here
kmod-34.2/tools/depmod.c:2007:9: branch_true: following ‘true’ branch...
kmod-34.2/tools/depmod.c:2010:9: branch_true: ...to here
kmod-34.2/tools/depmod.c:2021:16: branch_false: following ‘false’ branch (when ‘n_roots == 0’)...
kmod-34.2/tools/depmod.c:2048:12: branch_false: ...to here
kmod-34.2/tools/depmod.c:2048:12: branch_true: following ‘true’ branch (when ‘n_sorted < n_mods’)...
kmod-34.2/tools/depmod.c:2049:17: branch_true: ...to here
kmod-34.2/tools/depmod.c:2049:17: call_function: calling ‘depmod_report_cycles’ from ‘depmod_calculate_dependencies’
# 1972|   		l = kmod_list_remove(roots);
# 1973|   		roots = l;
# 1974|-> 		err = depmod_report_cycles_from_root(depmod, root, &roots, stack, n_r,
# 1975|   						     loop_set);
# 1976|   		if (err < 0)

Error: GCC_ANALYZER_WARNING (CWE-401): [#def101]
kmod-34.2/tools/depmod.c:2005:9: warning[-Wanalyzer-malloc-leak]: leak of ‘users’
kmod-34.2/tools/depmod.c:1999:17: acquire_memory: allocated here
kmod-34.2/tools/depmod.c:2000:12: branch_false: following ‘false’ branch (when ‘users’ is non-NULL)...
kmod-34.2/tools/depmod.c:2002:23: branch_false: ...to here
kmod-34.2/tools/depmod.c:2005:9: throw: if ‘log_printf’ throws an exception...
kmod-34.2/tools/depmod.c:2005:9: danger: ‘users’ leaks here; was allocated at [(1)](sarif:/runs/0/results/37/codeFlows/0/threadFlows/0/locations/0)
# 2003|   	sorted = roots + n_mods;
# 2004|   
# 2005|-> 	DBG("calculate dependencies and ordering (%hu modules)\n", n_mods);
# 2006|   
# 2007|   	assert(depmod->modules.count < UINT16_MAX);

Error: GCC_ANALYZER_WARNING (CWE-401): [#def102]
kmod-34.2/tools/depmod.c:2056:9: warning[-Wanalyzer-malloc-leak]: leak of ‘users’
kmod-34.2/tools/depmod.c:1999:17: acquire_memory: allocated here
kmod-34.2/tools/depmod.c:2000:12: branch_false: following ‘false’ branch (when ‘users’ is non-NULL)...
kmod-34.2/tools/depmod.c:2002:23: branch_false: ...to here
kmod-34.2/tools/depmod.c:2007:9: branch_true: following ‘true’ branch...
kmod-34.2/tools/depmod.c:2010:9: branch_true: ...to here
kmod-34.2/tools/depmod.c:2048:12: branch_false: following ‘false’ branch (when ‘n_sorted >= n_mods’)...
kmod-34.2/tools/depmod.c:2054:9: branch_false: ...to here
kmod-34.2/tools/depmod.c:2056:9: throw: if ‘log_printf’ throws an exception...
kmod-34.2/tools/depmod.c:2056:9: danger: ‘users’ leaks here; was allocated at [(1)](sarif:/runs/0/results/38/codeFlows/0/threadFlows/0/locations/0)
# 2054|   	depmod_sort_dependencies(depmod);
# 2055|   
# 2056|-> 	DBG("calculated dependencies and ordering (%hu modules)\n", n_mods);
# 2057|   
# 2058|   exit:

Error: GCC_ANALYZER_WARNING (CWE-401): [#def103]
kmod-34.2/tools/depmod.c:2090:23: warning[-Wanalyzer-malloc-leak]: leak of ‘<unknown>’
kmod-34.2/tools/depmod.c:2158:12: enter_function: entry to ‘output_deps_bin’
kmod-34.2/tools/depmod.c:2168:15: call_function: calling ‘index_create’ from ‘output_deps_bin’
kmod-34.2/tools/depmod.c:2168:15: return_function: returning to ‘output_deps_bin’ from ‘index_create’
kmod-34.2/tools/depmod.c:2169:12: branch_false: following ‘false’ branch...
kmod-34.2/tools/depmod.c:2172:9: branch_false: ...to here
kmod-34.2/tools/depmod.c:2175:21: branch_true: following ‘true’ branch...
kmod-34.2/tools/depmod.c:2176:41: branch_true: ...to here
kmod-34.2/tools/depmod.c:2177:33: call_function: inlined call to ‘mod_get_compressed_path’ from ‘output_deps_bin’
kmod-34.2/tools/depmod.c:2182:22: branch_true: ...to here
kmod-34.2/tools/depmod.c:2182:22: call_function: calling ‘mod_get_all_sorted_dependencies’ from ‘output_deps_bin’
# 2088|   		const struct mod *d = mod->deps.array[i];
# 2089|   
# 2090|-> 		err = array_append_unique(deps, d);
# 2091|   		if (err < 0) {
# 2092|   			if (err == -EEXIST) {

Error: GCC_ANALYZER_WARNING (CWE-401): [#def104]
kmod-34.2/tools/depmod.c:2113:17: warning[-Wanalyzer-malloc-leak]: leak of ‘<unknown>’
kmod-34.2/tools/depmod.c:2158:12: enter_function: entry to ‘output_deps_bin’
kmod-34.2/tools/depmod.c:2168:15: call_function: calling ‘index_create’ from ‘output_deps_bin’
kmod-34.2/tools/depmod.c:2168:15: return_function: returning to ‘output_deps_bin’ from ‘index_create’
kmod-34.2/tools/depmod.c:2169:12: branch_false: following ‘false’ branch...
kmod-34.2/tools/depmod.c:2172:9: branch_false: ...to here
kmod-34.2/tools/depmod.c:2175:21: branch_true: following ‘true’ branch...
kmod-34.2/tools/depmod.c:2176:41: branch_true: ...to here
kmod-34.2/tools/depmod.c:2177:33: call_function: inlined call to ‘mod_get_compressed_path’ from ‘output_deps_bin’
kmod-34.2/tools/depmod.c:2182:22: branch_true: ...to here
kmod-34.2/tools/depmod.c:2182:22: call_function: calling ‘mod_get_all_sorted_dependencies’ from ‘output_deps_bin’
# 2111|   
# 2112|   	if (deps->count > 1)
# 2113|-> 		array_sort(deps, dep_cmp);
# 2114|   	return true;
# 2115|   }

Error: GCC_ANALYZER_WARNING (CWE-401): [#def105]
kmod-34.2/tools/depmod.c:2172:9: warning[-Wanalyzer-malloc-leak]: leak of ‘<unknown>’
kmod-34.2/tools/depmod.c:2158:12: enter_function: entry to ‘output_deps_bin’
kmod-34.2/tools/depmod.c:2168:15: call_function: calling ‘index_create’ from ‘output_deps_bin’
kmod-34.2/tools/depmod.c:2168:15: return_function: returning to ‘output_deps_bin’ from ‘index_create’
kmod-34.2/tools/depmod.c:2169:12: branch_false: following ‘false’ branch...
kmod-34.2/tools/depmod.c:2172:9: branch_false: ...to here
kmod-34.2/tools/depmod.c:2172:9: throw: if ‘array_init’ throws an exception...
kmod-34.2/tools/depmod.c:2172:9: danger: ‘<unknown>’ leaks here; was allocated at [(6)](sarif:/runs/0/results/41/codeFlows/0/threadFlows/0/locations/5)
# 2170|   		return -ENOMEM;
# 2171|   
# 2172|-> 	array_init(&array, 64);
# 2173|   	strbuf_init(&sbuf);
# 2174|   

Error: GCC_ANALYZER_WARNING (CWE-401): [#def106]
kmod-34.2/tools/depmod.c:2172:9: warning[-Wanalyzer-malloc-leak]: leak of ‘index_create()’
kmod-34.2/tools/depmod.c:2158:12: enter_function: entry to ‘output_deps_bin’
kmod-34.2/tools/depmod.c:2168:15: call_function: calling ‘index_create’ from ‘output_deps_bin’
kmod-34.2/tools/depmod.c:2168:15: return_function: returning to ‘output_deps_bin’ from ‘index_create’
kmod-34.2/tools/depmod.c:2169:12: branch_false: following ‘false’ branch...
kmod-34.2/tools/depmod.c:2172:9: branch_false: ...to here
kmod-34.2/tools/depmod.c:2172:9: throw: if ‘array_init’ throws an exception...
kmod-34.2/tools/depmod.c:2172:9: danger: ‘index_create()’ leaks here; was allocated at [(4)](sarif:/runs/0/results/42/codeFlows/0/threadFlows/0/locations/3)
# 2170|   		return -ENOMEM;
# 2171|   
# 2172|-> 	array_init(&array, 64);
# 2173|   	strbuf_init(&sbuf);
# 2174|   

Error: GCC_ANALYZER_WARNING (CWE-401): [#def107]
kmod-34.2/tools/depmod.c:2173:9: warning[-Wanalyzer-malloc-leak]: leak of ‘<unknown>’
kmod-34.2/tools/depmod.c:2158:12: enter_function: entry to ‘output_deps_bin’
kmod-34.2/tools/depmod.c:2168:15: call_function: calling ‘index_create’ from ‘output_deps_bin’
kmod-34.2/tools/depmod.c:2168:15: return_function: returning to ‘output_deps_bin’ from ‘index_create’
kmod-34.2/tools/depmod.c:2169:12: branch_false: following ‘false’ branch...
kmod-34.2/tools/depmod.c:2172:9: branch_false: ...to here
kmod-34.2/tools/depmod.c:2173:9: throw: if ‘strbuf_init’ throws an exception...
kmod-34.2/tools/depmod.c:2173:9: danger: ‘<unknown>’ leaks here; was allocated at [(6)](sarif:/runs/0/results/43/codeFlows/0/threadFlows/0/locations/5)
# 2171|   
# 2172|   	array_init(&array, 64);
# 2173|-> 	strbuf_init(&sbuf);
# 2174|   
# 2175|   	for (i = 0; i < depmod->modules.count; i++) {

Error: GCC_ANALYZER_WARNING (CWE-401): [#def108]
kmod-34.2/tools/depmod.c:2173:9: warning[-Wanalyzer-malloc-leak]: leak of ‘index_create()’
kmod-34.2/tools/depmod.c:2158:12: enter_function: entry to ‘output_deps_bin’
kmod-34.2/tools/depmod.c:2168:15: call_function: calling ‘index_create’ from ‘output_deps_bin’
kmod-34.2/tools/depmod.c:2168:15: return_function: returning to ‘output_deps_bin’ from ‘index_create’
kmod-34.2/tools/depmod.c:2169:12: branch_false: following ‘false’ branch...
kmod-34.2/tools/depmod.c:2172:9: branch_false: ...to here
kmod-34.2/tools/depmod.c:2173:9: throw: if ‘strbuf_init’ throws an exception...
kmod-34.2/tools/depmod.c:2173:9: danger: ‘index_create()’ leaks here; was allocated at [(4)](sarif:/runs/0/results/44/codeFlows/0/threadFlows/0/locations/3)
# 2171|   
# 2172|   	array_init(&array, 64);
# 2173|-> 	strbuf_init(&sbuf);
# 2174|   
# 2175|   	for (i = 0; i < depmod->modules.count; i++) {

Error: GCC_ANALYZER_WARNING (CWE-401): [#def109]
kmod-34.2/tools/depmod.c:2175:25: warning[-Wanalyzer-malloc-leak]: leak of ‘index_create()’
kmod-34.2/tools/depmod.c:2158:12: enter_function: entry to ‘output_deps_bin’
kmod-34.2/tools/depmod.c:2168:15: call_function: calling ‘index_create’ from ‘output_deps_bin’
kmod-34.2/tools/depmod.c:2168:15: return_function: returning to ‘output_deps_bin’ from ‘index_create’
kmod-34.2/tools/depmod.c:2169:12: branch_false: following ‘false’ branch...
kmod-34.2/tools/depmod.c:2172:9: branch_false: ...to here
kmod-34.2/tools/depmod.c:2209:9: throw: if ‘strbuf_release’ throws an exception...
kmod-34.2/tools/depmod.c:2175:25: danger: ‘index_create()’ leaks here; was allocated at [(4)](sarif:/runs/0/results/45/codeFlows/0/threadFlows/0/locations/3)
# 2173|   	strbuf_init(&sbuf);
# 2174|   
# 2175|-> 	for (i = 0; i < depmod->modules.count; i++) {
# 2176|   		const struct mod *mod = depmod->modules.array[i];
# 2177|   		const char *p = mod_get_compressed_path(mod);

Error: GCC_ANALYZER_WARNING (CWE-401): [#def110]
kmod-34.2/tools/depmod.c:2183:25: warning[-Wanalyzer-malloc-leak]: leak of ‘<unknown>’
kmod-34.2/tools/depmod.c:2158:12: enter_function: entry to ‘output_deps_bin’
kmod-34.2/tools/depmod.c:2168:15: call_function: calling ‘index_create’ from ‘output_deps_bin’
kmod-34.2/tools/depmod.c:2168:15: return_function: returning to ‘output_deps_bin’ from ‘index_create’
kmod-34.2/tools/depmod.c:2169:12: branch_false: following ‘false’ branch...
kmod-34.2/tools/depmod.c:2172:9: branch_false: ...to here
kmod-34.2/tools/depmod.c:2175:21: branch_true: following ‘true’ branch...
kmod-34.2/tools/depmod.c:2176:41: branch_true: ...to here
kmod-34.2/tools/depmod.c:2177:33: call_function: inlined call to ‘mod_get_compressed_path’ from ‘output_deps_bin’
kmod-34.2/tools/depmod.c:2182:22: branch_true: ...to here
kmod-34.2/tools/depmod.c:2182:22: call_function: calling ‘mod_get_all_sorted_dependencies’ from ‘output_deps_bin’
kmod-34.2/tools/depmod.c:2182:22: return_function: returning to ‘output_deps_bin’ from ‘mod_get_all_sorted_dependencies’
kmod-34.2/tools/depmod.c:2182:20: branch_false: following ‘false’ branch...
kmod-34.2/tools/depmod.c:2183:25: branch_false: ...to here
kmod-34.2/tools/depmod.c:2183:25: throw: if ‘log_printf’ throws an exception...
kmod-34.2/tools/depmod.c:2183:25: danger: ‘<unknown>’ leaks here; was allocated at [(6)](sarif:/runs/0/results/59/codeFlows/0/threadFlows/0/locations/5)
# 2181|   
# 2182|   		if (!mod_get_all_sorted_dependencies(mod, &array)) {
# 2183|-> 			ERR("could not get all sorted dependencies of %s\n", p);
# 2184|   			continue;
# 2185|   		}

Error: GCC_ANALYZER_WARNING (CWE-401): [#def111]
kmod-34.2/tools/depmod.c:2187:17: warning[-Wanalyzer-malloc-leak]: leak of ‘<unknown>’
kmod-34.2/tools/depmod.c:2158:12: enter_function: entry to ‘output_deps_bin’
kmod-34.2/tools/depmod.c:2168:15: call_function: calling ‘index_create’ from ‘output_deps_bin’
kmod-34.2/tools/depmod.c:2168:15: return_function: returning to ‘output_deps_bin’ from ‘index_create’
kmod-34.2/tools/depmod.c:2169:12: branch_false: following ‘false’ branch...
kmod-34.2/tools/depmod.c:2172:9: branch_false: ...to here
kmod-34.2/tools/depmod.c:2175:21: branch_true: following ‘true’ branch...
kmod-34.2/tools/depmod.c:2176:41: branch_true: ...to here
kmod-34.2/tools/depmod.c:2177:33: call_function: inlined call to ‘mod_get_compressed_path’ from ‘output_deps_bin’
kmod-34.2/tools/depmod.c:2182:22: branch_true: ...to here
kmod-34.2/tools/depmod.c:2182:22: call_function: calling ‘mod_get_all_sorted_dependencies’ from ‘output_deps_bin’
kmod-34.2/tools/depmod.c:2182:22: return_function: returning to ‘output_deps_bin’ from ‘mod_get_all_sorted_dependencies’
kmod-34.2/tools/depmod.c:2182:20: branch_true: following ‘true’ branch...
kmod-34.2/tools/depmod.c:2187:17: branch_true: ...to here
kmod-34.2/tools/depmod.c:2187:17: throw: if ‘strbuf_clear’ throws an exception...
kmod-34.2/tools/depmod.c:2187:17: danger: ‘<unknown>’ leaks here; was allocated at [(6)](sarif:/runs/0/results/60/codeFlows/0/threadFlows/0/locations/5)
# 2185|   		}
# 2186|   
# 2187|-> 		strbuf_clear(&sbuf);
# 2188|   		if (!strbuf_pushchars(&sbuf, p) || !strbuf_pushchar(&sbuf, ':')) {
# 2189|   			ERR("could not write dependencies of %s\n", p);

Error: GCC_ANALYZER_WARNING (CWE-401): [#def112]
kmod-34.2/tools/depmod.c:2188:53: warning[-Wanalyzer-malloc-leak]: leak of ‘<unknown>’
kmod-34.2/tools/depmod.c:2158:12: enter_function: entry to ‘output_deps_bin’
kmod-34.2/tools/depmod.c:2168:15: call_function: calling ‘index_create’ from ‘output_deps_bin’
kmod-34.2/tools/depmod.c:2168:15: return_function: returning to ‘output_deps_bin’ from ‘index_create’
kmod-34.2/tools/depmod.c:2169:12: branch_false: following ‘false’ branch...
kmod-34.2/tools/depmod.c:2172:9: branch_false: ...to here
kmod-34.2/tools/depmod.c:2175:21: branch_true: following ‘true’ branch...
kmod-34.2/tools/depmod.c:2176:41: branch_true: ...to here
kmod-34.2/tools/depmod.c:2182:22: call_function: calling ‘mod_get_all_sorted_dependencies’ from ‘output_deps_bin’
kmod-34.2/tools/depmod.c:2182:22: return_function: returning to ‘output_deps_bin’ from ‘mod_get_all_sorted_dependencies’
kmod-34.2/tools/depmod.c:2182:20: branch_true: following ‘true’ branch...
kmod-34.2/tools/depmod.c:2187:17: branch_true: ...to here
kmod-34.2/tools/depmod.c:2188:53: throw: if ‘strbuf_pushchar’ throws an exception...
kmod-34.2/tools/depmod.c:2188:53: danger: ‘<unknown>’ leaks here; was allocated at [(6)](sarif:/runs/0/results/61/codeFlows/0/threadFlows/0/locations/5)
# 2186|   
# 2187|   		strbuf_clear(&sbuf);
# 2188|-> 		if (!strbuf_pushchars(&sbuf, p) || !strbuf_pushchar(&sbuf, ':')) {
# 2189|   			ERR("could not write dependencies of %s\n", p);
# 2190|   			continue;

Error: GCC_ANALYZER_WARNING (CWE-401): [#def113]
kmod-34.2/tools/depmod.c:2189:25: warning[-Wanalyzer-malloc-leak]: leak of ‘<unknown>’
kmod-34.2/tools/depmod.c:2158:12: enter_function: entry to ‘output_deps_bin’
kmod-34.2/tools/depmod.c:2168:15: call_function: calling ‘index_create’ from ‘output_deps_bin’
kmod-34.2/tools/depmod.c:2168:15: return_function: returning to ‘output_deps_bin’ from ‘index_create’
kmod-34.2/tools/depmod.c:2169:12: branch_false: following ‘false’ branch...
kmod-34.2/tools/depmod.c:2172:9: branch_false: ...to here
kmod-34.2/tools/depmod.c:2175:21: branch_true: following ‘true’ branch...
kmod-34.2/tools/depmod.c:2176:41: branch_true: ...to here
kmod-34.2/tools/depmod.c:2182:22: call_function: calling ‘mod_get_all_sorted_dependencies’ from ‘output_deps_bin’
kmod-34.2/tools/depmod.c:2182:22: return_function: returning to ‘output_deps_bin’ from ‘mod_get_all_sorted_dependencies’
kmod-34.2/tools/depmod.c:2182:20: branch_true: following ‘true’ branch...
kmod-34.2/tools/depmod.c:2187:17: branch_true: ...to here
kmod-34.2/tools/depmod.c:2189:25: throw: if ‘log_printf’ throws an exception...
kmod-34.2/tools/depmod.c:2189:25: danger: ‘<unknown>’ leaks here; was allocated at [(6)](sarif:/runs/0/results/62/codeFlows/0/threadFlows/0/locations/5)
# 2187|   		strbuf_clear(&sbuf);
# 2188|   		if (!strbuf_pushchars(&sbuf, p) || !strbuf_pushchar(&sbuf, ':')) {
# 2189|-> 			ERR("could not write dependencies of %s\n", p);
# 2190|   			continue;
# 2191|   		}

Error: GCC_ANALYZER_WARNING (CWE-401): [#def114]
kmod-34.2/tools/depmod.c:2197:30: warning[-Wanalyzer-malloc-leak]: leak of ‘<unknown>’
kmod-34.2/tools/depmod.c:2158:12: enter_function: entry to ‘output_deps_bin’
kmod-34.2/tools/depmod.c:2168:15: call_function: calling ‘index_create’ from ‘output_deps_bin’
kmod-34.2/tools/depmod.c:2168:15: return_function: returning to ‘output_deps_bin’ from ‘index_create’
kmod-34.2/tools/depmod.c:2169:12: branch_false: following ‘false’ branch...
kmod-34.2/tools/depmod.c:2172:9: branch_false: ...to here
kmod-34.2/tools/depmod.c:2175:21: branch_true: following ‘true’ branch...
kmod-34.2/tools/depmod.c:2176:41: branch_true: ...to here
kmod-34.2/tools/depmod.c:2182:22: call_function: calling ‘mod_get_all_sorted_dependencies’ from ‘output_deps_bin’
kmod-34.2/tools/depmod.c:2182:22: return_function: returning to ‘output_deps_bin’ from ‘mod_get_all_sorted_dependencies’
kmod-34.2/tools/depmod.c:2182:20: branch_true: following ‘true’ branch...
kmod-34.2/tools/depmod.c:2187:17: branch_true: ...to here
kmod-34.2/tools/depmod.c:2193:29: branch_true: following ‘true’ branch...
kmod-34.2/tools/depmod.c:2194:47: branch_true: ...to here
kmod-34.2/tools/depmod.c:2195:42: call_function: inlined call to ‘mod_get_compressed_path’ from ‘output_deps_bin’
kmod-34.2/tools/depmod.c:2197:30: branch_true: ...to here
kmod-34.2/tools/depmod.c:2197:30: throw: if ‘strbuf_pushchar’ throws an exception...
kmod-34.2/tools/depmod.c:2197:30: danger: ‘<unknown>’ leaks here; was allocated at [(6)](sarif:/runs/0/results/63/codeFlows/0/threadFlows/0/locations/5)
# 2195|   			const char *dp = mod_get_compressed_path(d);
# 2196|   
# 2197|-> 			if (!strbuf_pushchar(&sbuf, ' ') || !strbuf_pushchars(&sbuf, dp)) {
# 2198|   				ERR("could not write dependencies of %s\n", p);
# 2199|   				continue;

Error: GCC_ANALYZER_WARNING (CWE-401): [#def115]
kmod-34.2/tools/depmod.c:2198:33: warning[-Wanalyzer-malloc-leak]: leak of ‘<unknown>’
kmod-34.2/tools/depmod.c:2158:12: enter_function: entry to ‘output_deps_bin’
kmod-34.2/tools/depmod.c:2168:15: call_function: calling ‘index_create’ from ‘output_deps_bin’
kmod-34.2/tools/depmod.c:2168:15: return_function: returning to ‘output_deps_bin’ from ‘index_create’
kmod-34.2/tools/depmod.c:2169:12: branch_false: following ‘false’ branch...
kmod-34.2/tools/depmod.c:2172:9: branch_false: ...to here
kmod-34.2/tools/depmod.c:2175:21: branch_true: following ‘true’ branch...
kmod-34.2/tools/depmod.c:2176:41: branch_true: ...to here
kmod-34.2/tools/depmod.c:2182:22: call_function: calling ‘mod_get_all_sorted_dependencies’ from ‘output_deps_bin’
kmod-34.2/tools/depmod.c:2182:22: return_function: returning to ‘output_deps_bin’ from ‘mod_get_all_sorted_dependencies’
kmod-34.2/tools/depmod.c:2182:20: branch_true: following ‘true’ branch...
kmod-34.2/tools/depmod.c:2187:17: branch_true: ...to here
kmod-34.2/tools/depmod.c:2193:29: branch_true: following ‘true’ branch...
kmod-34.2/tools/depmod.c:2194:47: branch_true: ...to here
kmod-34.2/tools/depmod.c:2195:42: call_function: inlined call to ‘mod_get_compressed_path’ from ‘output_deps_bin’
kmod-34.2/tools/depmod.c:2197:30: branch_true: ...to here
kmod-34.2/tools/depmod.c:2197:28: branch_false: following ‘false’ branch...
kmod-34.2/tools/depmod.c:2198:33: branch_false: ...to here
kmod-34.2/tools/depmod.c:2198:33: throw: if ‘log_printf’ throws an exception...
kmod-34.2/tools/depmod.c:2198:33: danger: ‘<unknown>’ leaks here; was allocated at [(6)](sarif:/runs/0/results/64/codeFlows/0/threadFlows/0/locations/5)
# 2196|   
# 2197|   			if (!strbuf_pushchar(&sbuf, ' ') || !strbuf_pushchars(&sbuf, dp)) {
# 2198|-> 				ERR("could not write dependencies of %s\n", p);
# 2199|   				continue;
# 2200|   			}

Error: GCC_ANALYZER_WARNING (CWE-401): [#def116]
kmod-34.2/tools/depmod.c:2202:24: warning[-Wanalyzer-malloc-leak]: leak of ‘<unknown>’
kmod-34.2/tools/depmod.c:2158:12: enter_function: entry to ‘output_deps_bin’
kmod-34.2/tools/depmod.c:2168:15: call_function: calling ‘index_create’ from ‘output_deps_bin’
kmod-34.2/tools/depmod.c:2168:15: return_function: returning to ‘output_deps_bin’ from ‘index_create’
kmod-34.2/tools/depmod.c:2169:12: branch_false: following ‘false’ branch...
kmod-34.2/tools/depmod.c:2172:9: branch_false: ...to here
kmod-34.2/tools/depmod.c:2175:21: branch_true: following ‘true’ branch...
kmod-34.2/tools/depmod.c:2176:41: branch_true: ...to here
kmod-34.2/tools/depmod.c:2182:22: call_function: calling ‘mod_get_all_sorted_dependencies’ from ‘output_deps_bin’
kmod-34.2/tools/depmod.c:2182:22: return_function: returning to ‘output_deps_bin’ from ‘mod_get_all_sorted_dependencies’
kmod-34.2/tools/depmod.c:2182:20: branch_true: following ‘true’ branch...
kmod-34.2/tools/depmod.c:2187:17: branch_true: ...to here
kmod-34.2/tools/depmod.c:2202:24: throw: if ‘strbuf_str’ throws an exception...
kmod-34.2/tools/depmod.c:2202:24: danger: ‘<unknown>’ leaks here; was allocated at [(6)](sarif:/runs/0/results/65/codeFlows/0/threadFlows/0/locations/5)
# 2200|   			}
# 2201|   		}
# 2202|-> 		line = strbuf_str(&sbuf);
# 2203|   
# 2204|   		duplicate = index_insert(idx, mod->modname, line, mod->idx);

Error: GCC_ANALYZER_WARNING (CWE-401): [#def117]
kmod-34.2/tools/depmod.c:2209:9: warning[-Wanalyzer-malloc-leak]: leak of ‘<unknown>’
kmod-34.2/tools/depmod.c:2158:12: enter_function: entry to ‘output_deps_bin’
kmod-34.2/tools/depmod.c:2168:15: call_function: calling ‘index_create’ from ‘output_deps_bin’
kmod-34.2/tools/depmod.c:2168:15: return_function: returning to ‘output_deps_bin’ from ‘index_create’
kmod-34.2/tools/depmod.c:2169:12: branch_false: following ‘false’ branch...
kmod-34.2/tools/depmod.c:2172:9: branch_false: ...to here
kmod-34.2/tools/depmod.c:2209:9: throw: if ‘strbuf_release’ throws an exception...
kmod-34.2/tools/depmod.c:2209:9: danger: ‘<unknown>’ leaks here; was allocated at [(6)](sarif:/runs/0/results/66/codeFlows/0/threadFlows/0/locations/5)
# 2207|   	}
# 2208|   
# 2209|-> 	strbuf_release(&sbuf);
# 2210|   	array_free_array(&array);
# 2211|   	index_write(idx, out);

Error: GCC_ANALYZER_WARNING (CWE-401): [#def118]
kmod-34.2/tools/depmod.c:2210:9: warning[-Wanalyzer-malloc-leak]: leak of ‘<unknown>’
kmod-34.2/tools/depmod.c:2158:12: enter_function: entry to ‘output_deps_bin’
kmod-34.2/tools/depmod.c:2168:15: call_function: calling ‘index_create’ from ‘output_deps_bin’
kmod-34.2/tools/depmod.c:2168:15: return_function: returning to ‘output_deps_bin’ from ‘index_create’
kmod-34.2/tools/depmod.c:2169:12: branch_false: following ‘false’ branch...
kmod-34.2/tools/depmod.c:2172:9: branch_false: ...to here
kmod-34.2/tools/depmod.c:2210:9: throw: if ‘array_free_array’ throws an exception...
kmod-34.2/tools/depmod.c:2210:9: danger: ‘<unknown>’ leaks here; was allocated at [(6)](sarif:/runs/0/results/67/codeFlows/0/threadFlows/0/locations/5)
# 2208|   
# 2209|   	strbuf_release(&sbuf);
# 2210|-> 	array_free_array(&array);
# 2211|   	index_write(idx, out);
# 2212|   	index_destroy(idx);

Error: GCC_ANALYZER_WARNING (CWE-401): [#def119]
kmod-34.2/tools/depmod.c:2248:25: warning[-Wanalyzer-malloc-leak]: leak of ‘index_create()’
kmod-34.2/tools/depmod.c:2236:12: enter_function: entry to ‘output_aliases_bin’
kmod-34.2/tools/depmod.c:2244:15: call_function: calling ‘index_create’ from ‘output_aliases_bin’
kmod-34.2/tools/depmod.c:2244:15: return_function: returning to ‘output_aliases_bin’ from ‘index_create’
kmod-34.2/tools/depmod.c:2245:12: branch_false: following ‘false’ branch...
kmod-34.2/tools/depmod.c:2245:12: branch_false: ...to here
kmod-34.2/tools/depmod.c:2248:21: branch_true: following ‘true’ branch...
kmod-34.2/tools/depmod.c:2249:41: branch_true: ...to here
kmod-34.2/tools/depmod.c:2258:29: throw: if ‘alias_normalize’ throws an exception...
kmod-34.2/tools/depmod.c:2248:25: danger: ‘index_create()’ leaks here; was allocated at [(4)](sarif:/runs/0/results/68/codeFlows/0/threadFlows/0/locations/3)
# 2246|   		return -ENOMEM;
# 2247|   
# 2248|-> 	for (i = 0; i < depmod->modules.count; i++) {
# 2249|   		const struct mod *mod = depmod->modules.array[i];
# 2250|   		const struct array *values = &mod->alias_values;

Error: GCC_ANALYZER_WARNING (CWE-401): [#def120]
kmod-34.2/tools/depmod.c:2258:29: warning[-Wanalyzer-malloc-leak]: leak of ‘<unknown>’
kmod-34.2/tools/depmod.c:2236:12: enter_function: entry to ‘output_aliases_bin’
kmod-34.2/tools/depmod.c:2244:15: call_function: calling ‘index_create’ from ‘output_aliases_bin’
kmod-34.2/tools/depmod.c:2244:15: return_function: returning to ‘output_aliases_bin’ from ‘index_create’
kmod-34.2/tools/depmod.c:2245:12: branch_false: following ‘false’ branch...
kmod-34.2/tools/depmod.c:2245:12: branch_false: ...to here
kmod-34.2/tools/depmod.c:2248:21: branch_true: following ‘true’ branch...
kmod-34.2/tools/depmod.c:2249:41: branch_true: ...to here
kmod-34.2/tools/depmod.c:2258:29: throw: if ‘alias_normalize’ throws an exception...
kmod-34.2/tools/depmod.c:2258:29: danger: ‘<unknown>’ leaks here; was allocated at [(6)](sarif:/runs/0/results/72/codeFlows/0/threadFlows/0/locations/5)
# 2256|   			int duplicate;
# 2257|   
# 2258|-> 			if (alias_normalize(value, buf, NULL) < 0) {
# 2259|   				WRN("Unmatched bracket in %s\n", value);
# 2260|   				continue;

Error: GCC_ANALYZER_WARNING (CWE-401): [#def121]
kmod-34.2/tools/depmod.c:2259:33: warning[-Wanalyzer-malloc-leak]: leak of ‘<unknown>’
kmod-34.2/tools/depmod.c:2236:12: enter_function: entry to ‘output_aliases_bin’
kmod-34.2/tools/depmod.c:2244:15: call_function: calling ‘index_create’ from ‘output_aliases_bin’
kmod-34.2/tools/depmod.c:2244:15: return_function: returning to ‘output_aliases_bin’ from ‘index_create’
kmod-34.2/tools/depmod.c:2245:12: branch_false: following ‘false’ branch...
kmod-34.2/tools/depmod.c:2245:12: branch_false: ...to here
kmod-34.2/tools/depmod.c:2248:21: branch_true: following ‘true’ branch...
kmod-34.2/tools/depmod.c:2249:41: branch_true: ...to here
kmod-34.2/tools/depmod.c:2258:28: branch_true: following ‘true’ branch...
kmod-34.2/tools/depmod.c:2259:33: branch_true: ...to here
kmod-34.2/tools/depmod.c:2259:33: throw: if ‘log_printf’ throws an exception...
kmod-34.2/tools/depmod.c:2259:33: danger: ‘<unknown>’ leaks here; was allocated at [(6)](sarif:/runs/0/results/73/codeFlows/0/threadFlows/0/locations/5)
# 2257|   
# 2258|   			if (alias_normalize(value, buf, NULL) < 0) {
# 2259|-> 				WRN("Unmatched bracket in %s\n", value);
# 2260|   				continue;
# 2261|   			}

Error: GCC_ANALYZER_WARNING (CWE-401): [#def122]
kmod-34.2/tools/depmod.c:2352:9: warning[-Wanalyzer-malloc-leak]: leak of ‘<unknown>’
kmod-34.2/tools/depmod.c:2335:12: enter_function: entry to ‘output_symbols_bin’
kmod-34.2/tools/depmod.c:2345:12: branch_false: following ‘false’ branch...
kmod-34.2/tools/depmod.c:2348:15: branch_false: ...to here
kmod-34.2/tools/depmod.c:2348:15: call_function: calling ‘index_create’ from ‘output_symbols_bin’
kmod-34.2/tools/depmod.c:2348:15: return_function: returning to ‘output_symbols_bin’ from ‘index_create’
kmod-34.2/tools/depmod.c:2349:12: branch_false: following ‘false’ branch...
kmod-34.2/tools/depmod.c:2352:24: branch_false: ...to here
kmod-34.2/tools/depmod.c:2352:9: throw: if ‘hash_iter_init’ throws an exception...
kmod-34.2/tools/depmod.c:2352:9: danger: ‘<unknown>’ leaks here; was allocated at [(8)](sarif:/runs/0/results/74/codeFlows/0/threadFlows/0/locations/7)
# 2350|   		return -ENOMEM;
# 2351|   
# 2352|-> 	hash_iter_init(depmod->symbols, &iter);
# 2353|   
# 2354|   	strbuf_pushchars(&salias, base);

Error: GCC_ANALYZER_WARNING (CWE-401): [#def123]
kmod-34.2/tools/depmod.c:2352:24: warning[-Wanalyzer-malloc-leak]: leak of ‘index_create()’
kmod-34.2/tools/depmod.c:2335:12: enter_function: entry to ‘output_symbols_bin’
kmod-34.2/tools/depmod.c:2345:12: branch_false: following ‘false’ branch...
kmod-34.2/tools/depmod.c:2348:15: branch_false: ...to here
kmod-34.2/tools/depmod.c:2348:15: call_function: calling ‘index_create’ from ‘output_symbols_bin’
kmod-34.2/tools/depmod.c:2348:15: return_function: returning to ‘output_symbols_bin’ from ‘index_create’
kmod-34.2/tools/depmod.c:2349:12: branch_false: following ‘false’ branch...
kmod-34.2/tools/depmod.c:2352:24: branch_false: ...to here
kmod-34.2/tools/depmod.c:2352:9: throw: if ‘hash_iter_init’ throws an exception...
kmod-34.2/tools/depmod.c:2352:24: danger: ‘index_create()’ leaks here; was allocated at [(6)](sarif:/runs/0/results/75/codeFlows/0/threadFlows/0/locations/5)
# 2350|   		return -ENOMEM;
# 2351|   
# 2352|-> 	hash_iter_init(depmod->symbols, &iter);
# 2353|   
# 2354|   	strbuf_pushchars(&salias, base);

Error: GCC_ANALYZER_WARNING (CWE-401): [#def124]
kmod-34.2/tools/depmod.c:2354:9: warning[-Wanalyzer-malloc-leak]: leak of ‘<unknown>’
kmod-34.2/tools/depmod.c:2335:12: enter_function: entry to ‘output_symbols_bin’
kmod-34.2/tools/depmod.c:2345:12: branch_false: following ‘false’ branch...
kmod-34.2/tools/depmod.c:2348:15: branch_false: ...to here
kmod-34.2/tools/depmod.c:2348:15: call_function: calling ‘index_create’ from ‘output_symbols_bin’
kmod-34.2/tools/depmod.c:2348:15: return_function: returning to ‘output_symbols_bin’ from ‘index_create’
kmod-34.2/tools/depmod.c:2349:12: branch_false: following ‘false’ branch...
kmod-34.2/tools/depmod.c:2352:24: branch_false: ...to here
kmod-34.2/tools/depmod.c:2354:9: call_function: calling ‘strbuf_pushchars’ from ‘output_symbols_bin’
kmod-34.2/tools/depmod.c:2354:9: danger: ‘<unknown>’ leaks here; was allocated at [(8)](sarif:/runs/0/results/83/codeFlows/0/threadFlows/0/locations/7)
# 2352|   	hash_iter_init(depmod->symbols, &iter);
# 2353|   
# 2354|-> 	strbuf_pushchars(&salias, base);
# 2355|   
# 2356|   	while (hash_iter_next(&iter, NULL, &v)) {

Error: GCC_ANALYZER_WARNING (CWE-401): [#def125]
kmod-34.2/tools/depmod.c:2356:16: warning[-Wanalyzer-malloc-leak]: leak of ‘<unknown>’
kmod-34.2/tools/depmod.c:2335:12: enter_function: entry to ‘output_symbols_bin’
kmod-34.2/tools/depmod.c:2345:12: branch_false: following ‘false’ branch...
kmod-34.2/tools/depmod.c:2348:15: branch_false: ...to here
kmod-34.2/tools/depmod.c:2348:15: call_function: calling ‘index_create’ from ‘output_symbols_bin’
kmod-34.2/tools/depmod.c:2348:15: return_function: returning to ‘output_symbols_bin’ from ‘index_create’
kmod-34.2/tools/depmod.c:2349:12: branch_false: following ‘false’ branch...
kmod-34.2/tools/depmod.c:2352:24: branch_false: ...to here
kmod-34.2/tools/depmod.c:2356:16: throw: if ‘hash_iter_next’ throws an exception...
kmod-34.2/tools/depmod.c:2356:16: danger: ‘<unknown>’ leaks here; was allocated at [(8)](sarif:/runs/0/results/84/codeFlows/0/threadFlows/0/locations/7)
# 2354|   	strbuf_pushchars(&salias, base);
# 2355|   
# 2356|-> 	while (hash_iter_next(&iter, NULL, &v)) {
# 2357|   		int duplicate;
# 2358|   		const struct symbol *sym = v;

Error: GCC_ANALYZER_WARNING (CWE-401): [#def126]
kmod-34.2/tools/depmod.c:2363:17: warning[-Wanalyzer-malloc-leak]: leak of ‘<unknown>’
kmod-34.2/tools/depmod.c:2335:12: enter_function: entry to ‘output_symbols_bin’
kmod-34.2/tools/depmod.c:2345:12: branch_false: following ‘false’ branch...
kmod-34.2/tools/depmod.c:2348:15: branch_false: ...to here
kmod-34.2/tools/depmod.c:2348:15: call_function: calling ‘index_create’ from ‘output_symbols_bin’
kmod-34.2/tools/depmod.c:2348:15: return_function: returning to ‘output_symbols_bin’ from ‘index_create’
kmod-34.2/tools/depmod.c:2349:12: branch_false: following ‘false’ branch...
kmod-34.2/tools/depmod.c:2352:24: branch_false: ...to here
kmod-34.2/tools/depmod.c:2356:16: branch_true: following ‘true’ branch...
kmod-34.2/tools/depmod.c:2358:38: branch_true: ...to here
kmod-34.2/tools/depmod.c:2363:17: throw: if ‘strbuf_shrink_to’ throws an exception...
kmod-34.2/tools/depmod.c:2363:17: danger: ‘<unknown>’ leaks here; was allocated at [(8)](sarif:/runs/0/results/85/codeFlows/0/threadFlows/0/locations/7)
# 2361|   			continue;
# 2362|   
# 2363|-> 		strbuf_shrink_to(&salias, baselen);
# 2364|   
# 2365|   		if (!strbuf_pushchars(&salias, sym->name) ||

Error: GCC_ANALYZER_WARNING (CWE-401): [#def127]
kmod-34.2/tools/depmod.c:2365:22: warning[-Wanalyzer-malloc-leak]: leak of ‘<unknown>’
kmod-34.2/tools/depmod.c:2335:12: enter_function: entry to ‘output_symbols_bin’
kmod-34.2/tools/depmod.c:2345:12: branch_false: following ‘false’ branch...
kmod-34.2/tools/depmod.c:2348:15: branch_false: ...to here
kmod-34.2/tools/depmod.c:2348:15: call_function: calling ‘index_create’ from ‘output_symbols_bin’
kmod-34.2/tools/depmod.c:2348:15: return_function: returning to ‘output_symbols_bin’ from ‘index_create’
kmod-34.2/tools/depmod.c:2349:12: branch_false: following ‘false’ branch...
kmod-34.2/tools/depmod.c:2352:24: branch_false: ...to here
kmod-34.2/tools/depmod.c:2356:16: branch_true: following ‘true’ branch...
kmod-34.2/tools/depmod.c:2358:38: branch_true: ...to here
kmod-34.2/tools/depmod.c:2365:22: call_function: calling ‘strbuf_pushchars’ from ‘output_symbols_bin’
kmod-34.2/tools/depmod.c:2365:22: danger: ‘<unknown>’ leaks here; was allocated at [(8)](sarif:/runs/0/results/86/codeFlows/0/threadFlows/0/locations/7)
# 2363|   		strbuf_shrink_to(&salias, baselen);
# 2364|   
# 2365|-> 		if (!strbuf_pushchars(&salias, sym->name) ||
# 2366|   		    !strbuf_reserve_extra(&salias, 1)) {
# 2367|   			ret = -ENOMEM;

Error: GCC_ANALYZER_WARNING (CWE-401): [#def128]
kmod-34.2/tools/depmod.c:2366:22: warning[-Wanalyzer-malloc-leak]: leak of ‘<unknown>’
kmod-34.2/tools/depmod.c:2335:12: enter_function: entry to ‘output_symbols_bin’
kmod-34.2/tools/depmod.c:2345:12: branch_false: following ‘false’ branch...
kmod-34.2/tools/depmod.c:2348:15: branch_false: ...to here
kmod-34.2/tools/depmod.c:2348:15: call_function: calling ‘index_create’ from ‘output_symbols_bin’
kmod-34.2/tools/depmod.c:2348:15: return_function: returning to ‘output_symbols_bin’ from ‘index_create’
kmod-34.2/tools/depmod.c:2349:12: branch_false: following ‘false’ branch...
kmod-34.2/tools/depmod.c:2352:24: branch_false: ...to here
kmod-34.2/tools/depmod.c:2356:16: branch_true: following ‘true’ branch...
kmod-34.2/tools/depmod.c:2358:38: branch_true: ...to here
kmod-34.2/tools/depmod.c:2365:20: branch_false: following ‘false’ branch...
kmod-34.2/tools/depmod.c:2366:22: branch_false: ...to here
kmod-34.2/tools/depmod.c:2366:22: throw: if ‘strbuf_reserve_extra’ throws an exception...
kmod-34.2/tools/depmod.c:2366:22: danger: ‘<unknown>’ leaks here; was allocated at [(8)](sarif:/runs/0/results/87/codeFlows/0/threadFlows/0/locations/7)
# 2364|   
# 2365|   		if (!strbuf_pushchars(&salias, sym->name) ||
# 2366|-> 		    !strbuf_reserve_extra(&salias, 1)) {
# 2367|   			ret = -ENOMEM;
# 2368|   			goto err_alloc;

Error: GCC_ANALYZER_WARNING (CWE-401): [#def129]
kmod-34.2/tools/depmod.c:2371:29: warning[-Wanalyzer-malloc-leak]: leak of ‘<unknown>’
kmod-34.2/tools/depmod.c:2335:12: enter_function: entry to ‘output_symbols_bin’
kmod-34.2/tools/depmod.c:2345:12: branch_false: following ‘false’ branch...
kmod-34.2/tools/depmod.c:2348:15: branch_false: ...to here
kmod-34.2/tools/depmod.c:2348:15: call_function: calling ‘index_create’ from ‘output_symbols_bin’
kmod-34.2/tools/depmod.c:2348:15: return_function: returning to ‘output_symbols_bin’ from ‘index_create’
kmod-34.2/tools/depmod.c:2349:12: branch_false: following ‘false’ branch...
kmod-34.2/tools/depmod.c:2352:24: branch_false: ...to here
kmod-34.2/tools/depmod.c:2356:16: branch_true: following ‘true’ branch...
kmod-34.2/tools/depmod.c:2358:38: branch_true: ...to here
kmod-34.2/tools/depmod.c:2365:20: branch_false: following ‘false’ branch...
kmod-34.2/tools/depmod.c:2366:22: branch_false: ...to here
kmod-34.2/tools/depmod.c:2365:21: branch_true: following ‘true’ branch...
kmod-34.2/tools/depmod.c:2372:42: branch_true: ...to here
kmod-34.2/tools/depmod.c:2371:29: throw: if ‘strbuf_str’ throws an exception...
kmod-34.2/tools/depmod.c:2371:29: danger: ‘<unknown>’ leaks here; was allocated at [(8)](sarif:/runs/0/results/88/codeFlows/0/threadFlows/0/locations/7)
# 2369|   		}
# 2370|   
# 2371|-> 		duplicate = index_insert(idx, strbuf_str(&salias), sym->owner->modname,
# 2372|   					 sym->owner->idx);
# 2373|   

Error: GCC_ANALYZER_WARNING (CWE-775): [#def130]
kmod-34.2/tools/depmod.c:2628:33: warning[-Wanalyzer-fd-leak]: leak of file descriptor ‘dfd’
kmod-34.2/tools/depmod.c:2597:12: branch_false: following ‘false’ branch (when ‘out’ is NULL)...
kmod-34.2/tools/depmod.c:2600:38: branch_false: ...to here
kmod-34.2/tools/depmod.c:2601:20: branch_false: following ‘false’ branch...
kmod-34.2/tools/depmod.c:2605:23: branch_false: ...to here
kmod-34.2/tools/depmod.c:2605:23: acquire_resource: opened here
kmod-34.2/tools/depmod.c:2606:20: branch_false: following ‘false’ branch...
kmod-34.2/tools/depmod.c:2613:14: branch_false: ...to here
kmod-34.2/tools/depmod.c:2613:30: branch_true: following ‘true’ branch...
kmod-34.2/tools/depmod.c:2615:22: branch_true: ...to here
kmod-34.2/tools/depmod.c:2618:20: branch_true: following ‘true’ branch (when ‘out’ is NULL)...
kmod-34.2/tools/depmod.c:2626:49: branch_true: ...to here
kmod-34.2/tools/depmod.c:2627:28: branch_true: following ‘true’ branch (when ‘n > 254’)...
kmod-34.2/tools/depmod.c:2628:33: branch_true: ...to here
kmod-34.2/tools/depmod.c:2628:33: throw: if ‘log_printf’ throws an exception...
kmod-34.2/tools/depmod.c:2628:33: danger: ‘dfd’ leaks here; was opened at [(5)](sarif:/runs/0/results/90/codeFlows/0/threadFlows/0/locations/4)
# 2626|   				     (long long)tv.tv_sec);
# 2627|   			if (n >= (int)sizeof(tmp)) {
# 2628|-> 				ERR("bad filename: %s.%i.%lli.%lli: path too long\n",
# 2629|   				    itr->name, getpid(), (long long)tv.tv_usec,
# 2630|   				    (long long)tv.tv_sec);

Error: GCC_ANALYZER_WARNING (CWE-775): [#def131]
kmod-34.2/tools/depmod.c:2633:30: warning[-Wanalyzer-fd-leak]: leak of file descriptor ‘dfd’
kmod-34.2/tools/depmod.c:2597:12: branch_false: following ‘false’ branch (when ‘out’ is NULL)...
kmod-34.2/tools/depmod.c:2600:38: branch_false: ...to here
kmod-34.2/tools/depmod.c:2601:20: branch_false: following ‘false’ branch...
kmod-34.2/tools/depmod.c:2605:23: branch_false: ...to here
kmod-34.2/tools/depmod.c:2605:23: acquire_resource: opened here
kmod-34.2/tools/depmod.c:2606:20: branch_false: following ‘false’ branch...
kmod-34.2/tools/depmod.c:2613:14: branch_false: ...to here
kmod-34.2/tools/depmod.c:2613:30: branch_true: following ‘true’ branch...
kmod-34.2/tools/depmod.c:2615:22: branch_true: ...to here
kmod-34.2/tools/depmod.c:2618:20: branch_true: following ‘true’ branch (when ‘out’ is NULL)...
kmod-34.2/tools/depmod.c:2626:49: branch_true: ...to here
kmod-34.2/tools/depmod.c:2633:30: throw: if ‘openat’ throws an exception...
kmod-34.2/tools/depmod.c:2633:30: danger: ‘dfd’ leaks here; was opened at [(5)](sarif:/runs/0/results/91/codeFlows/0/threadFlows/0/locations/4)
# 2631|   				continue;
# 2632|   			}
# 2633|-> 			fd = openat(dfd, tmp, flags, mode);
# 2634|   			if (fd < 0) {
# 2635|   				ERR("openat(%s, %s, %o, %o): %m\n", dname, tmp, flags,

Error: GCC_ANALYZER_WARNING (CWE-775): [#def132]
kmod-34.2/tools/depmod.c:2678:17: warning[-Wanalyzer-fd-leak]: leak of file descriptor ‘dfd’
kmod-34.2/tools/depmod.c:2597:12: branch_false: following ‘false’ branch (when ‘out’ is NULL)...
kmod-34.2/tools/depmod.c:2600:38: branch_false: ...to here
kmod-34.2/tools/depmod.c:2601:20: branch_false: following ‘false’ branch...
kmod-34.2/tools/depmod.c:2605:23: branch_false: ...to here
kmod-34.2/tools/depmod.c:2605:23: acquire_resource: opened here
kmod-34.2/tools/depmod.c:2606:20: branch_false: following ‘false’ branch...
kmod-34.2/tools/depmod.c:2613:14: branch_false: ...to here
kmod-34.2/tools/depmod.c:2613:30: branch_true: following ‘true’ branch...
kmod-34.2/tools/depmod.c:2615:22: branch_true: ...to here
kmod-34.2/tools/depmod.c:2618:20: branch_true: following ‘true’ branch (when ‘out’ is NULL)...
kmod-34.2/tools/depmod.c:2626:49: branch_true: ...to here
kmod-34.2/tools/depmod.c:2627:28: branch_true: following ‘true’ branch (when ‘n > 254’)...
kmod-34.2/tools/depmod.c:2628:33: branch_true: ...to here
kmod-34.2/tools/depmod.c:2677:12: branch_true: following ‘true’ branch (when ‘dfd != -1’)...
kmod-34.2/tools/depmod.c:2678:17: branch_true: ...to here
kmod-34.2/tools/depmod.c:2678:17: throw: if ‘close’ throws an exception...
kmod-34.2/tools/depmod.c:2678:17: danger: ‘dfd’ leaks here; was opened at [(5)](sarif:/runs/0/results/92/codeFlows/0/threadFlows/0/locations/4)
# 2676|   
# 2677|   	if (dfd >= 0)
# 2678|-> 		close(dfd);
# 2679|   
# 2680|   	return err;

Error: GCC_ANALYZER_WARNING (CWE-775): [#def133]
kmod-34.2/tools/depmod.c:2706:9: warning[-Wanalyzer-file-leak]: leak of FILE ‘fopen(filename, "r")’
kmod-34.2/tools/depmod.c:2700:14: acquire_resource: opened here
kmod-34.2/tools/depmod.c:2701:12: branch_false: following ‘false’ branch...
kmod-34.2/tools/depmod.c:2706:9: branch_false: ...to here
kmod-34.2/tools/depmod.c:2706:9: throw: if ‘log_printf’ throws an exception...
kmod-34.2/tools/depmod.c:2706:9: danger: ‘fopen(filename, "r")’ leaks here; was opened at [(1)](sarif:/runs/0/results/93/codeFlows/0/threadFlows/0/locations/0)
# 2704|   		return err;
# 2705|   	}
# 2706|-> 	DBG("load symvers: %s\n", filename);
# 2707|   
# 2708|   	/* eg. "0xb352177e\tfind_first_bit\tvmlinux\tEXPORT_SYMBOL" */

Error: GCC_ANALYZER_WARNING (CWE-401): [#def134]
kmod-34.2/tools/depmod.c:2706:9: warning[-Wanalyzer-malloc-leak]: leak of ‘fopen(filename, "r")’
kmod-34.2/tools/depmod.c:2700:14: acquire_memory: allocated here
kmod-34.2/tools/depmod.c:2701:12: branch_false: following ‘false’ branch...
kmod-34.2/tools/depmod.c:2706:9: branch_false: ...to here
kmod-34.2/tools/depmod.c:2706:9: throw: if ‘log_printf’ throws an exception...
kmod-34.2/tools/depmod.c:2706:9: danger: ‘fopen(filename, "r")’ leaks here; was allocated at [(1)](sarif:/runs/0/results/94/codeFlows/0/threadFlows/0/locations/0)
# 2704|   		return err;
# 2705|   	}
# 2706|-> 	DBG("load symvers: %s\n", filename);
# 2707|   
# 2708|   	/* eg. "0xb352177e\tfind_first_bit\tvmlinux\tEXPORT_SYMBOL" */

Error: GCC_ANALYZER_WARNING (CWE-775): [#def135]
kmod-34.2/tools/depmod.c:2719:21: warning[-Wanalyzer-file-leak]: leak of FILE ‘fopen(filename, "r")’
kmod-34.2/tools/depmod.c:2700:14: acquire_resource: opened here
kmod-34.2/tools/depmod.c:2701:12: branch_false: following ‘false’ branch...
kmod-34.2/tools/depmod.c:2706:9: branch_false: ...to here
kmod-34.2/tools/depmod.c:2709:16: branch_true: following ‘true’ branch...
kmod-34.2/tools/depmod.c:2714:17: branch_true: ...to here
kmod-34.2/tools/depmod.c:2719:20: branch_false: following ‘false’ branch...
kmod-34.2/tools/depmod.c:2722:20: branch_false: following ‘false’ branch (when the strings are equal)...
kmod-34.2/tools/depmod.c:2725:23: branch_false: ...to here
kmod-34.2/tools/depmod.c:2726:20: branch_true: following ‘true’ branch...
kmod-34.2/tools/depmod.c:2727:25: branch_true: ...to here
kmod-34.2/tools/depmod.c:2727:25: throw: if ‘log_printf’ throws an exception...
kmod-34.2/tools/depmod.c:2719:21: danger: ‘fopen(filename, "r")’ leaks here; was opened at [(1)](sarif:/runs/0/results/95/codeFlows/0/threadFlows/0/locations/0)
# 2717|   		sym = strtok(NULL, " \t");
# 2718|   		where = strtok(NULL, " \t");
# 2719|-> 		if (!ver || !sym || !where)
# 2720|   			continue;
# 2721|   

Error: GCC_ANALYZER_WARNING (CWE-401): [#def136]
kmod-34.2/tools/depmod.c:2719:21: warning[-Wanalyzer-malloc-leak]: leak of ‘fopen(filename, "r")’
kmod-34.2/tools/depmod.c:2700:14: acquire_memory: allocated here
kmod-34.2/tools/depmod.c:2701:12: branch_false: following ‘false’ branch...
kmod-34.2/tools/depmod.c:2706:9: branch_false: ...to here
kmod-34.2/tools/depmod.c:2709:16: branch_true: following ‘true’ branch...
kmod-34.2/tools/depmod.c:2714:17: branch_true: ...to here
kmod-34.2/tools/depmod.c:2719:20: branch_false: following ‘false’ branch...
kmod-34.2/tools/depmod.c:2722:20: branch_false: following ‘false’ branch (when the strings are equal)...
kmod-34.2/tools/depmod.c:2725:23: branch_false: ...to here
kmod-34.2/tools/depmod.c:2726:20: branch_true: following ‘true’ branch...
kmod-34.2/tools/depmod.c:2727:25: branch_true: ...to here
kmod-34.2/tools/depmod.c:2727:25: throw: if ‘log_printf’ throws an exception...
kmod-34.2/tools/depmod.c:2719:21: danger: ‘fopen(filename, "r")’ leaks here; was allocated at [(1)](sarif:/runs/0/results/96/codeFlows/0/threadFlows/0/locations/0)
# 2717|   		sym = strtok(NULL, " \t");
# 2718|   		where = strtok(NULL, " \t");
# 2719|-> 		if (!ver || !sym || !where)
# 2720|   			continue;
# 2721|   

Error: GCC_ANALYZER_WARNING (CWE-775): [#def137]
kmod-34.2/tools/depmod.c:2756:9: warning[-Wanalyzer-file-leak]: leak of FILE ‘fopen(filename, "r")’
kmod-34.2/tools/depmod.c:2750:14: acquire_resource: opened here
kmod-34.2/tools/depmod.c:2751:12: branch_false: following ‘false’ branch...
kmod-34.2/tools/depmod.c:2756:9: branch_false: ...to here
kmod-34.2/tools/depmod.c:2756:9: throw: if ‘log_printf’ throws an exception...
kmod-34.2/tools/depmod.c:2756:9: danger: ‘fopen(filename, "r")’ leaks here; was opened at [(1)](sarif:/runs/0/results/101/codeFlows/0/threadFlows/0/locations/0)
# 2754|   		return err;
# 2755|   	}
# 2756|-> 	DBG("load System.map: %s\n", filename);
# 2757|   
# 2758|   	/* eg. c0294200 R __ksymtab_devfs_alloc_devnum */

Error: GCC_ANALYZER_WARNING (CWE-401): [#def138]
kmod-34.2/tools/depmod.c:2756:9: warning[-Wanalyzer-malloc-leak]: leak of ‘fopen(filename, "r")’
kmod-34.2/tools/depmod.c:2750:14: acquire_memory: allocated here
kmod-34.2/tools/depmod.c:2751:12: branch_false: following ‘false’ branch...
kmod-34.2/tools/depmod.c:2756:9: branch_false: ...to here
kmod-34.2/tools/depmod.c:2756:9: throw: if ‘log_printf’ throws an exception...
kmod-34.2/tools/depmod.c:2756:9: danger: ‘fopen(filename, "r")’ leaks here; was allocated at [(1)](sarif:/runs/0/results/102/codeFlows/0/threadFlows/0/locations/0)
# 2754|   		return err;
# 2755|   	}
# 2756|-> 	DBG("load System.map: %s\n", filename);
# 2757|   
# 2758|   	/* eg. c0294200 R __ksymtab_devfs_alloc_devnum */

Error: GCC_ANALYZER_WARNING (CWE-775): [#def139]
kmod-34.2/tools/depmod.c:2774:21: warning[-Wanalyzer-file-leak]: leak of FILE ‘fopen(filename, "r")’
kmod-34.2/tools/depmod.c:2742:12: enter_function: entry to ‘depmod_load_system_map’
kmod-34.2/tools/depmod.c:2750:14: acquire_resource: opened here
kmod-34.2/tools/depmod.c:2751:12: branch_false: following ‘false’ branch...
kmod-34.2/tools/depmod.c:2756:9: branch_false: ...to here
kmod-34.2/tools/depmod.c:2759:16: branch_true: following ‘true’ branch...
kmod-34.2/tools/depmod.c:2762:17: branch_true: ...to here
kmod-34.2/tools/depmod.c:2765:20: branch_false: following ‘false’ branch (when ‘p’ is non-NULL)...
kmod-34.2/tools/depmod.c:2767:17: branch_false: ...to here
kmod-34.2/tools/depmod.c:2769:20: branch_false: following ‘false’ branch (when ‘p’ is non-NULL)...
kmod-34.2/tools/depmod.c:2771:17: branch_false: ...to here
kmod-34.2/tools/depmod.c:2778:20: branch_false: following ‘false’ branch...
kmod-34.2/tools/depmod.c:2781:23: branch_false: ...to here
kmod-34.2/tools/depmod.c:2782:20: branch_false: following ‘false’ branch (when ‘end’ is NULL)...
kmod-34.2/tools/depmod.c:2785:43: branch_false: ...to here
kmod-34.2/tools/depmod.c:2785:17: call_function: calling ‘depmod_symbol_add’ from ‘depmod_load_system_map’
# 2772|   
# 2773|   		/* skip prefix */
# 2774|-> 		if (p[0] == depmod->cfg->sym_prefix)
# 2775|   			p++;
# 2776|   

Error: GCC_ANALYZER_WARNING (CWE-401): [#def140]
kmod-34.2/tools/depmod.c:2774:21: warning[-Wanalyzer-malloc-leak]: leak of ‘fopen(filename, "r")’
kmod-34.2/tools/depmod.c:2742:12: enter_function: entry to ‘depmod_load_system_map’
kmod-34.2/tools/depmod.c:2750:14: acquire_memory: allocated here
kmod-34.2/tools/depmod.c:2751:12: branch_false: following ‘false’ branch...
kmod-34.2/tools/depmod.c:2756:9: branch_false: ...to here
kmod-34.2/tools/depmod.c:2759:16: branch_true: following ‘true’ branch...
kmod-34.2/tools/depmod.c:2762:17: branch_true: ...to here
kmod-34.2/tools/depmod.c:2765:20: branch_false: following ‘false’ branch (when ‘p’ is non-NULL)...
kmod-34.2/tools/depmod.c:2767:17: branch_false: ...to here
kmod-34.2/tools/depmod.c:2769:20: branch_false: following ‘false’ branch (when ‘p’ is non-NULL)...
kmod-34.2/tools/depmod.c:2771:17: branch_false: ...to here
kmod-34.2/tools/depmod.c:2778:20: branch_false: following ‘false’ branch...
kmod-34.2/tools/depmod.c:2781:23: branch_false: ...to here
kmod-34.2/tools/depmod.c:2782:20: branch_false: following ‘false’ branch (when ‘end’ is NULL)...
kmod-34.2/tools/depmod.c:2785:43: branch_false: ...to here
kmod-34.2/tools/depmod.c:2785:17: call_function: calling ‘depmod_symbol_add’ from ‘depmod_load_system_map’
# 2772|   
# 2773|   		/* skip prefix */
# 2774|-> 		if (p[0] == depmod->cfg->sym_prefix)
# 2775|   			p++;
# 2776|   

Error: GCC_ANALYZER_WARNING (CWE-775): [#def141]
kmod-34.2/tools/depmod.c:2789:17: warning[-Wanalyzer-file-leak]: leak of FILE ‘fopen(filename, "r")’
kmod-34.2/tools/depmod.c:2750:14: acquire_resource: opened here
kmod-34.2/tools/depmod.c:2751:12: branch_false: following ‘false’ branch...
kmod-34.2/tools/depmod.c:2756:9: branch_false: ...to here
kmod-34.2/tools/depmod.c:2759:16: branch_true: following ‘true’ branch...
kmod-34.2/tools/depmod.c:2762:17: branch_true: ...to here
kmod-34.2/tools/depmod.c:2765:20: branch_true: following ‘true’ branch (when ‘p’ is NULL)...
kmod-34.2/tools/depmod.c:2766:25: branch_true: ...to here
kmod-34.2/tools/depmod.c:2789:17: throw: if ‘log_printf’ throws an exception...
kmod-34.2/tools/depmod.c:2789:17: danger: ‘fopen(filename, "r")’ leaks here; was opened at [(1)](sarif:/runs/0/results/107/codeFlows/0/threadFlows/0/locations/0)
# 2787|   
# 2788|   invalid_syntax:
# 2789|-> 		ERR("%s:%u: invalid line: %s\n", filename, linenum, line);
# 2790|   	}
# 2791|   	depmod_add_fake_syms(depmod);

Error: GCC_ANALYZER_WARNING (CWE-401): [#def142]
kmod-34.2/tools/depmod.c:2789:17: warning[-Wanalyzer-malloc-leak]: leak of ‘fopen(filename, "r")’
kmod-34.2/tools/depmod.c:2750:14: acquire_memory: allocated here
kmod-34.2/tools/depmod.c:2751:12: branch_false: following ‘false’ branch...
kmod-34.2/tools/depmod.c:2756:9: branch_false: ...to here
kmod-34.2/tools/depmod.c:2759:16: branch_true: following ‘true’ branch...
kmod-34.2/tools/depmod.c:2762:17: branch_true: ...to here
kmod-34.2/tools/depmod.c:2765:20: branch_true: following ‘true’ branch (when ‘p’ is NULL)...
kmod-34.2/tools/depmod.c:2766:25: branch_true: ...to here
kmod-34.2/tools/depmod.c:2789:17: throw: if ‘log_printf’ throws an exception...
kmod-34.2/tools/depmod.c:2789:17: danger: ‘fopen(filename, "r")’ leaks here; was allocated at [(1)](sarif:/runs/0/results/108/codeFlows/0/threadFlows/0/locations/0)
# 2787|   
# 2788|   invalid_syntax:
# 2789|-> 		ERR("%s:%u: invalid line: %s\n", filename, linenum, line);
# 2790|   	}
# 2791|   	depmod_add_fake_syms(depmod);

Error: GCC_ANALYZER_WARNING (CWE-401): [#def143]
kmod-34.2/tools/modinfo.c:120:9: warning[-Wanalyzer-malloc-leak]: leak of ‘params’
kmod-34.2/tools/modinfo.c:367:12: enter_function: entry to ‘do_modinfo’
kmod-34.2/tools/modinfo.c:428:12: branch_false: following ‘false’ branch...
kmod-34.2/tools/modinfo.c:433:13: branch_false: ...to here
kmod-34.2/tools/modinfo.c:433:12: branch_false: following ‘false’ branch...
kmod-34.2/tools/modinfo.c:456:15: branch_false: ...to here
kmod-34.2/tools/modinfo.c:457:12: branch_false: following ‘false’ branch...
kmod-34.2/tools/modinfo.c:463:14: branch_false: ...to here
kmod-34.2/tools/modinfo.c:463:26: branch_true: following ‘true’ branch (when ‘i < argc’)...
kmod-34.2/tools/modinfo.c:464:40: branch_true: ...to here
kmod-34.2/tools/modinfo.c:467:20: branch_false: following ‘false’ branch (when ‘arg_is_modname == 0’)...
kmod-34.2/tools/modinfo.c:469:26: branch_false: ...to here
kmod-34.2/tools/modinfo.c:469:25: branch_true: following ‘true’ branch...
kmod-34.2/tools/modinfo.c:470:29: branch_true: ...to here
kmod-34.2/tools/modinfo.c:470:29: call_function: calling ‘modinfo_path_do’ from ‘do_modinfo’
#  118|   	int err = 0;
#  119|   
#  120|-> 	kmod_list_foreach(l, list) {
#  121|   		const char *key = kmod_module_info_get_key(l);
#  122|   		const char *value = kmod_module_info_get_value(l);

Error: GCC_ANALYZER_WARNING (CWE-401): [#def144]
kmod-34.2/tools/modinfo.c:121:35: warning[-Wanalyzer-malloc-leak]: leak of ‘params’
kmod-34.2/tools/modinfo.c:367:12: enter_function: entry to ‘do_modinfo’
kmod-34.2/tools/modinfo.c:428:12: branch_false: following ‘false’ branch...
kmod-34.2/tools/modinfo.c:433:13: branch_false: ...to here
kmod-34.2/tools/modinfo.c:433:12: branch_false: following ‘false’ branch...
kmod-34.2/tools/modinfo.c:456:15: branch_false: ...to here
kmod-34.2/tools/modinfo.c:457:12: branch_false: following ‘false’ branch...
kmod-34.2/tools/modinfo.c:463:14: branch_false: ...to here
kmod-34.2/tools/modinfo.c:463:26: branch_true: following ‘true’ branch (when ‘i < argc’)...
kmod-34.2/tools/modinfo.c:464:40: branch_true: ...to here
kmod-34.2/tools/modinfo.c:467:20: branch_false: following ‘false’ branch (when ‘arg_is_modname == 0’)...
kmod-34.2/tools/modinfo.c:469:26: branch_false: ...to here
kmod-34.2/tools/modinfo.c:469:25: branch_true: following ‘true’ branch...
kmod-34.2/tools/modinfo.c:470:29: branch_true: ...to here
kmod-34.2/tools/modinfo.c:470:29: call_function: calling ‘modinfo_path_do’ from ‘do_modinfo’
#  119|   
#  120|   	kmod_list_foreach(l, list) {
#  121|-> 		const char *key = kmod_module_info_get_key(l);
#  122|   		const char *value = kmod_module_info_get_value(l);
#  123|   		if (!streq(key, "parm") && !streq(key, "parmtype"))

Error: GCC_ANALYZER_WARNING (CWE-401): [#def145]
kmod-34.2/tools/modinfo.c:122:37: warning[-Wanalyzer-malloc-leak]: leak of ‘params’
kmod-34.2/tools/modinfo.c:367:12: enter_function: entry to ‘do_modinfo’
kmod-34.2/tools/modinfo.c:428:12: branch_false: following ‘false’ branch...
kmod-34.2/tools/modinfo.c:433:13: branch_false: ...to here
kmod-34.2/tools/modinfo.c:433:12: branch_false: following ‘false’ branch...
kmod-34.2/tools/modinfo.c:456:15: branch_false: ...to here
kmod-34.2/tools/modinfo.c:457:12: branch_false: following ‘false’ branch...
kmod-34.2/tools/modinfo.c:463:14: branch_false: ...to here
kmod-34.2/tools/modinfo.c:463:26: branch_true: following ‘true’ branch (when ‘i < argc’)...
kmod-34.2/tools/modinfo.c:464:40: branch_true: ...to here
kmod-34.2/tools/modinfo.c:467:20: branch_false: following ‘false’ branch (when ‘arg_is_modname == 0’)...
kmod-34.2/tools/modinfo.c:469:26: branch_false: ...to here
kmod-34.2/tools/modinfo.c:469:25: branch_true: following ‘true’ branch...
kmod-34.2/tools/modinfo.c:470:29: branch_true: ...to here
kmod-34.2/tools/modinfo.c:470:29: call_function: calling ‘modinfo_path_do’ from ‘do_modinfo’
#  120|   	kmod_list_foreach(l, list) {
#  121|   		const char *key = kmod_module_info_get_key(l);
#  122|-> 		const char *value = kmod_module_info_get_value(l);
#  123|   		if (!streq(key, "parm") && !streq(key, "parmtype"))
#  124|   			continue;

Error: GCC_ANALYZER_WARNING (CWE-401): [#def146]
kmod-34.2/tools/modprobe.c:672:17: warning[-Wanalyzer-malloc-leak]: leak of ‘tmp’
kmod-34.2/tools/modprobe.c:750:12: enter_function: entry to ‘do_modprobe’
kmod-34.2/tools/modprobe.c:769:16: call_function: calling ‘prepend_options_from_env’ from ‘do_modprobe’
kmod-34.2/tools/modprobe.c:769:16: return_function: returning to ‘do_modprobe’ from ‘prepend_options_from_env’
kmod-34.2/tools/modprobe.c:770:12: branch_false: following ‘false’ branch...
kmod-34.2/tools/modprobe.c:770:12: branch_false: ...to here
kmod-34.2/tools/modprobe.c:778:20: branch_false: following ‘false’ branch (when ‘c != -1’)...
kmod-34.2/tools/modprobe.c:780:17: branch_false: ...to here
kmod-34.2/tools/modprobe.c:842:28: branch_false: following ‘false’ branch (when ‘tmp’ is non-NULL)...
kmod-34.2/tools/modprobe.c:848:37: branch_false: ...to here
kmod-34.2/tools/modprobe.c:852:25: call_function: calling ‘env_modprobe_options_append’ from ‘do_modprobe’
#  670|   
#  671|   	if (asprintf(&env, "%s %s", old, value) < 0) {
#  672|-> 		ERR("could not append value to $MODPROBE_OPTIONS\n");
#  673|   		return;
#  674|   	}

Error: GCC_ANALYZER_WARNING (CWE-401): [#def147]
kmod-34.2/tools/modprobe.c:677:17: warning[-Wanalyzer-malloc-leak]: leak of ‘tmp’
kmod-34.2/tools/modprobe.c:750:12: enter_function: entry to ‘do_modprobe’
kmod-34.2/tools/modprobe.c:769:16: call_function: calling ‘prepend_options_from_env’ from ‘do_modprobe’
kmod-34.2/tools/modprobe.c:769:16: return_function: returning to ‘do_modprobe’ from ‘prepend_options_from_env’
kmod-34.2/tools/modprobe.c:770:12: branch_false: following ‘false’ branch...
kmod-34.2/tools/modprobe.c:770:12: branch_false: ...to here
kmod-34.2/tools/modprobe.c:778:20: branch_false: following ‘false’ branch (when ‘c != -1’)...
kmod-34.2/tools/modprobe.c:780:17: branch_false: ...to here
kmod-34.2/tools/modprobe.c:842:28: branch_false: following ‘false’ branch (when ‘tmp’ is non-NULL)...
kmod-34.2/tools/modprobe.c:848:37: branch_false: ...to here
kmod-34.2/tools/modprobe.c:852:25: call_function: calling ‘env_modprobe_options_append’ from ‘do_modprobe’
#  675|   
#  676|   	if (setenv("MODPROBE_OPTIONS", env, 1) < 0)
#  677|-> 		ERR("could not setenv(MODPROBE_OPTIONS, \"%s\")\n", env);
#  678|   	free(env);
#  679|   }

Error: GCC_ANALYZER_WARNING (CWE-401): [#def148]
kmod-34.2/tools/modprobe.c:691:23: warning[-Wanalyzer-malloc-leak]: leak of ‘prepend_options_from_env(&argc,  orig_argv)’
kmod-34.2/tools/modprobe.c:750:12: enter_function: entry to ‘do_modprobe’
kmod-34.2/tools/modprobe.c:769:16: call_function: calling ‘prepend_options_from_env’ from ‘do_modprobe’
kmod-34.2/tools/modprobe.c:769:16: return_function: returning to ‘do_modprobe’ from ‘prepend_options_from_env’
kmod-34.2/tools/modprobe.c:770:12: branch_false: following ‘false’ branch...
kmod-34.2/tools/modprobe.c:770:12: branch_false: ...to here
kmod-34.2/tools/modprobe.c:778:20: branch_false: following ‘false’ branch (when ‘c != -1’)...
kmod-34.2/tools/modprobe.c:780:17: branch_false: ...to here
kmod-34.2/tools/modprobe.c:886:25: throw: if ‘log_printf’ throws an exception...
kmod-34.2/tools/modprobe.c:691:23: danger: ‘prepend_options_from_env(&argc,  orig_argv)’ leaks here; was allocated at [(6)](sarif:/runs/0/results/2/codeFlows/0/threadFlows/0/locations/5)
#  689|   		return orig_argv;
#  690|   
#  691|-> 	for (p = env; *p != '\0'; p++) {
#  692|   		if (*p == ' ')
#  693|   			space_count++;

Error: GCC_ANALYZER_WARNING (CWE-775): [#def149]
kmod-34.2/tools/static-nodes.c:233:21: warning[-Wanalyzer-file-leak]: leak of FILE ‘fopen(&modules, "re")’
kmod-34.2/tools/static-nodes.c:158:20: branch_false: following ‘false’ branch (when ‘c != -1’)...
kmod-34.2/tools/static-nodes.c:161:17: branch_false: ...to here
kmod-34.2/tools/static-nodes.c:196:12: branch_false: following ‘false’ branch...
kmod-34.2/tools/static-nodes.c:202:13: branch_false: ...to here
kmod-34.2/tools/static-nodes.c:204:12: branch_false: following ‘false’ branch (when ‘r <= 4095’)...
kmod-34.2/tools/static-nodes.c:212:14: branch_false: ...to here
kmod-34.2/tools/static-nodes.c:212:14: acquire_resource: opened here
kmod-34.2/tools/static-nodes.c:213:12: branch_false: following ‘false’ branch...
kmod-34.2/tools/static-nodes.c:230:12: branch_false: ...to here
kmod-34.2/tools/static-nodes.c:230:12: branch_false: following ‘false’ branch (when ‘output’ is non-NULL)...
kmod-34.2/tools/static-nodes.c:233:21: branch_false: ...to here
kmod-34.2/tools/static-nodes.c:233:21: throw: if ‘mkdir_parents’ throws an exception...
kmod-34.2/tools/static-nodes.c:233:21: danger: ‘fopen(&modules, "re")’ leaks here; was opened at [(9)](sarif:/runs/0/results/0/codeFlows/0/threadFlows/0/locations/8)
#  231|   		out = stdout;
#  232|   	} else {
#  233|-> 		r = mkdir_parents(output, 0755);
#  234|   		if (r < 0) {
#  235|   			fprintf(stderr,

Error: GCC_ANALYZER_WARNING (CWE-401): [#def150]
kmod-34.2/tools/static-nodes.c:233:21: warning[-Wanalyzer-malloc-leak]: leak of ‘fopen(&modules, "re")’
kmod-34.2/tools/static-nodes.c:158:20: branch_false: following ‘false’ branch (when ‘c != -1’)...
kmod-34.2/tools/static-nodes.c:161:17: branch_false: ...to here
kmod-34.2/tools/static-nodes.c:196:12: branch_false: following ‘false’ branch...
kmod-34.2/tools/static-nodes.c:202:13: branch_false: ...to here
kmod-34.2/tools/static-nodes.c:204:12: branch_false: following ‘false’ branch (when ‘r <= 4095’)...
kmod-34.2/tools/static-nodes.c:212:14: branch_false: ...to here
kmod-34.2/tools/static-nodes.c:212:14: acquire_memory: allocated here
kmod-34.2/tools/static-nodes.c:213:12: branch_false: following ‘false’ branch...
kmod-34.2/tools/static-nodes.c:230:12: branch_false: ...to here
kmod-34.2/tools/static-nodes.c:230:12: branch_false: following ‘false’ branch (when ‘output’ is non-NULL)...
kmod-34.2/tools/static-nodes.c:233:21: branch_false: ...to here
kmod-34.2/tools/static-nodes.c:233:21: throw: if ‘mkdir_parents’ throws an exception...
kmod-34.2/tools/static-nodes.c:233:21: danger: ‘fopen(&modules, "re")’ leaks here; was allocated at [(9)](sarif:/runs/0/results/1/codeFlows/0/threadFlows/0/locations/8)
#  231|   		out = stdout;
#  232|   	} else {
#  233|-> 		r = mkdir_parents(output, 0755);
#  234|   		if (r < 0) {
#  235|   			fprintf(stderr,

Error: GCC_ANALYZER_WARNING (CWE-775): [#def151]
kmod-34.2/tools/static-nodes.c:257:21: warning[-Wanalyzer-file-leak]: leak of FILE ‘fopen(&modules, "re")’
kmod-34.2/tools/static-nodes.c:196:12: branch_false: following ‘false’ branch...
kmod-34.2/tools/static-nodes.c:202:13: branch_false: ...to here
kmod-34.2/tools/static-nodes.c:204:12: branch_false: following ‘false’ branch (when ‘r <= 4095’)...
kmod-34.2/tools/static-nodes.c:212:14: branch_false: ...to here
kmod-34.2/tools/static-nodes.c:212:14: acquire_resource: opened here
kmod-34.2/tools/static-nodes.c:213:12: branch_false: following ‘false’ branch...
kmod-34.2/tools/static-nodes.c:230:12: branch_false: ...to here
kmod-34.2/tools/static-nodes.c:230:12: branch_true: following ‘true’ branch (when ‘output’ is NULL)...
kmod-34.2/tools/static-nodes.c:231:17: branch_true: ...to here
kmod-34.2/tools/static-nodes.c:250:16: branch_true: following ‘true’ branch...
kmod-34.2/tools/static-nodes.c:257:21: branch_true: ...to here
kmod-34.2/tools/static-nodes.c:262:20: branch_false: following ‘false’ branch...
kmod-34.2/tools/static-nodes.c:268:17: throw: if the called function throws an exception...
kmod-34.2/tools/static-nodes.c:257:21: danger: ‘fopen(&modules, "re")’ leaks here; was opened at [(5)](sarif:/runs/0/results/2/codeFlows/0/threadFlows/0/locations/4)
#  255|   		int matches;
#  256|   
#  257|-> 		if (buf[0] == '#')
#  258|   			continue;
#  259|   

Error: GCC_ANALYZER_WARNING (CWE-401): [#def152]
kmod-34.2/tools/static-nodes.c:257:21: warning[-Wanalyzer-malloc-leak]: leak of ‘fopen(&modules, "re")’
kmod-34.2/tools/static-nodes.c:196:12: branch_false: following ‘false’ branch...
kmod-34.2/tools/static-nodes.c:202:13: branch_false: ...to here
kmod-34.2/tools/static-nodes.c:204:12: branch_false: following ‘false’ branch (when ‘r <= 4095’)...
kmod-34.2/tools/static-nodes.c:212:14: branch_false: ...to here
kmod-34.2/tools/static-nodes.c:212:14: acquire_memory: allocated here
kmod-34.2/tools/static-nodes.c:213:12: branch_false: following ‘false’ branch...
kmod-34.2/tools/static-nodes.c:230:12: branch_false: ...to here
kmod-34.2/tools/static-nodes.c:230:12: branch_true: following ‘true’ branch (when ‘output’ is NULL)...
kmod-34.2/tools/static-nodes.c:231:17: branch_true: ...to here
kmod-34.2/tools/static-nodes.c:250:16: branch_true: following ‘true’ branch...
kmod-34.2/tools/static-nodes.c:257:21: branch_true: ...to here
kmod-34.2/tools/static-nodes.c:262:20: branch_false: following ‘false’ branch...
kmod-34.2/tools/static-nodes.c:268:17: throw: if the called function throws an exception...
kmod-34.2/tools/static-nodes.c:257:21: danger: ‘fopen(&modules, "re")’ leaks here; was allocated at [(5)](sarif:/runs/0/results/3/codeFlows/0/threadFlows/0/locations/4)
#  255|   		int matches;
#  256|   
#  257|-> 		if (buf[0] == '#')
#  258|   			continue;
#  259|   

Error: GCC_ANALYZER_WARNING (CWE-775): [#def153]
kmod-34.2/tools/static-nodes.c:268:17: warning[-Wanalyzer-file-leak]: leak of FILE ‘out’
kmod-34.2/tools/static-nodes.c:158:20: branch_false: following ‘false’ branch (when ‘c != -1’)...
kmod-34.2/tools/static-nodes.c:161:17: branch_false: ...to here
kmod-34.2/tools/static-nodes.c:196:12: branch_false: following ‘false’ branch...
kmod-34.2/tools/static-nodes.c:202:13: branch_false: ...to here
kmod-34.2/tools/static-nodes.c:204:12: branch_false: following ‘false’ branch (when ‘r <= 4095’)...
kmod-34.2/tools/static-nodes.c:212:14: branch_false: ...to here
kmod-34.2/tools/static-nodes.c:213:12: branch_false: following ‘false’ branch...
kmod-34.2/tools/static-nodes.c:230:12: branch_false: ...to here
kmod-34.2/tools/static-nodes.c:230:12: branch_false: following ‘false’ branch (when ‘output’ is non-NULL)...
kmod-34.2/tools/static-nodes.c:233:21: branch_false: ...to here
kmod-34.2/tools/static-nodes.c:234:20: branch_false: following ‘false’ branch...
kmod-34.2/tools/static-nodes.c:242:23: branch_false: ...to here
kmod-34.2/tools/static-nodes.c:242:23: acquire_resource: opened here
kmod-34.2/tools/static-nodes.c:243:20: branch_false: following ‘false’ branch...
kmod-34.2/tools/static-nodes.c:243:20: branch_false: ...to here
kmod-34.2/tools/static-nodes.c:250:16: branch_true: following ‘true’ branch...
kmod-34.2/tools/static-nodes.c:257:21: branch_true: ...to here
kmod-34.2/tools/static-nodes.c:262:20: branch_false: following ‘false’ branch...
kmod-34.2/tools/static-nodes.c:268:17: throw: if the called function throws an exception...
kmod-34.2/tools/static-nodes.c:268:17: danger: ‘out’ leaks here; was opened at [(13)](sarif:/runs/0/results/4/codeFlows/0/threadFlows/0/locations/12)
#  266|   		}
#  267|   
#  268|-> 		format->write(out, modname, devname, type, maj, min);
#  269|   	}
#  270|   

Error: GCC_ANALYZER_WARNING (CWE-401): [#def154]
kmod-34.2/tools/static-nodes.c:268:17: warning[-Wanalyzer-malloc-leak]: leak of ‘out’
kmod-34.2/tools/static-nodes.c:158:20: branch_false: following ‘false’ branch (when ‘c != -1’)...
kmod-34.2/tools/static-nodes.c:161:17: branch_false: ...to here
kmod-34.2/tools/static-nodes.c:196:12: branch_false: following ‘false’ branch...
kmod-34.2/tools/static-nodes.c:202:13: branch_false: ...to here
kmod-34.2/tools/static-nodes.c:204:12: branch_false: following ‘false’ branch (when ‘r <= 4095’)...
kmod-34.2/tools/static-nodes.c:212:14: branch_false: ...to here
kmod-34.2/tools/static-nodes.c:213:12: branch_false: following ‘false’ branch...
kmod-34.2/tools/static-nodes.c:230:12: branch_false: ...to here
kmod-34.2/tools/static-nodes.c:230:12: branch_false: following ‘false’ branch (when ‘output’ is non-NULL)...
kmod-34.2/tools/static-nodes.c:233:21: branch_false: ...to here
kmod-34.2/tools/static-nodes.c:234:20: branch_false: following ‘false’ branch...
kmod-34.2/tools/static-nodes.c:242:23: branch_false: ...to here
kmod-34.2/tools/static-nodes.c:242:23: acquire_memory: allocated here
kmod-34.2/tools/static-nodes.c:243:20: branch_false: following ‘false’ branch...
kmod-34.2/tools/static-nodes.c:243:20: branch_false: ...to here
kmod-34.2/tools/static-nodes.c:250:16: branch_true: following ‘true’ branch...
kmod-34.2/tools/static-nodes.c:257:21: branch_true: ...to here
kmod-34.2/tools/static-nodes.c:262:20: branch_false: following ‘false’ branch...
kmod-34.2/tools/static-nodes.c:268:17: throw: if the called function throws an exception...
kmod-34.2/tools/static-nodes.c:268:17: danger: ‘out’ leaks here; was allocated at [(13)](sarif:/runs/0/results/5/codeFlows/0/threadFlows/0/locations/12)
#  266|   		}
#  267|   
#  268|-> 		format->write(out, modname, devname, type, maj, min);
#  269|   	}
#  270|   

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
enabled-pluginsclippy, cppcheck, gcc, shellcheck, unicontrol
exit-code0
hostip-172-16-1-192.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-namekmod-34.2-3.fc44
store-results-to/tmp/tmp14uv2ecx/kmod-34.2-3.fc44.tar.xz
time-created2026-01-08 18:18:22
time-finished2026-01-08 18:19:54
toolcsmock
tool-args'/usr/bin/csmock' '-r' 'fedora-rawhide-x86_64' '-t' 'gcc,cppcheck,clippy,shellcheck,unicontrol' '-o' '/tmp/tmp14uv2ecx/kmod-34.2-3.fc44.tar.xz' '--gcc-analyze' '--unicontrol-notests' '--unicontrol-bidi-only' '--install' 'pam' '--gcc-analyzer-bin=/usr/bin/gcc' '/tmp/tmp14uv2ecx/kmod-34.2-3.fc44.src.rpm'
tool-versioncsmock-3.8.3.20251215.161544.g62de9a5-1.el9