Newly introduced findings

List of Findings

Error: GCC_ANALYZER_WARNING (CWE-401): [#def1]
util-linux-2.42.start/include/xalloc.h:33:17: warning[-Wanalyzer-malloc-leak]: leak of ‘range.in_filename’
#   31|   
#   32|   	if (!ret && size)
#   33|-> 		err(XALLOC_EXIT_CODE, "cannot allocate %zu bytes", size);
#   34|   	return ret;
#   35|   }

Error: GCC_ANALYZER_WARNING (CWE-401): [#def2]
util-linux-2.42.start/misc-utils/copyfilerange.c:34: included_from: Included from here.
util-linux-2.42.start/include/xalloc.h: scope_hint: In function ‘xmalloc’
util-linux-2.42.start/include/xalloc.h:33:17: warning[-Wanalyzer-malloc-leak]: leak of ‘range.out_filename’
util-linux-2.42.start/include/c.h:23: included_from: Included from here.
util-linux-2.42.start/misc-utils/copyfilerange.c:31: included_from: Included from here.
#   31|   
#   32|   	if (!ret && size)
#   33|-> 		err(XALLOC_EXIT_CODE, "cannot allocate %zu bytes", size);
#   34|   	return ret;
#   35|   }

Error: GCC_ANALYZER_WARNING (CWE-401): [#def3]
util-linux-2.42.start/include/xalloc.h:95:17: warning[-Wanalyzer-malloc-leak]: leak of ‘range.in_filename’
#   93|   	ret = strdup(str);
#   94|   	if (!ret)
#   95|-> 		err(XALLOC_EXIT_CODE, "cannot duplicate string");
#   96|   	return ret;
#   97|   }

Error: GCC_ANALYZER_WARNING (CWE-401): [#def4]
util-linux-2.42.start/include/xalloc.h:95:17: warning[-Wanalyzer-malloc-leak]: leak of ‘range.out_filename’
#   93|   	ret = strdup(str);
#   94|   	if (!ret)
#   95|-> 		err(XALLOC_EXIT_CODE, "cannot duplicate string");
#   96|   	return ret;
#   97|   }

Error: GCC_ANALYZER_WARNING (CWE-401): [#def5]
util-linux-2.42.start/include/xalloc.h: scope_hint: In function ‘xstrdup’
util-linux-2.42.start/include/xalloc.h:95:17: warning[-Wanalyzer-malloc-leak]: leak of ‘range_files’
#   93|   	ret = strdup(str);
#   94|   	if (!ret)
#   95|-> 		err(XALLOC_EXIT_CODE, "cannot duplicate string");
#   96|   	return ret;
#   97|   }

Error: GCC_ANALYZER_WARNING (CWE-401): [#def6]
util-linux-2.42.start/misc-utils/copyfilerange.c: scope_hint: In function ‘parse_range’
util-linux-2.42.start/misc-utils/copyfilerange.c:98:13: warning[-Wanalyzer-malloc-leak]: leak of ‘xstrdup(str)’
/usr/include/features.h:540: included_from: Included from here.
/usr/include/bits/libc-header-start.h:33: included_from: Included from here.
/usr/include/stdio.h:28: included_from: Included from here.
util-linux-2.42.start/misc-utils/copyfilerange.c:20: included_from: Included from here.
#   96|   		goto fail;
#   97|   	*token = '\0';
#   98|-> 	if (*start) {
#   99|   		rc = strtosize(start, &tmp);
#  100|   		if (rc && tmp <= SIZE_MAX)

Error: GCC_ANALYZER_WARNING (CWE-401): [#def7]
util-linux-2.42.start/misc-utils/copyfilerange.c:99:22: warning[-Wanalyzer-malloc-leak]: leak of ‘range.in_filename’
#   97|   	*token = '\0';
#   98|   	if (*start) {
#   99|-> 		rc = strtosize(start, &tmp);
#  100|   		if (rc && tmp <= SIZE_MAX)
#  101|   			goto fail;

Error: GCC_ANALYZER_WARNING (CWE-401): [#def8]
util-linux-2.42.start/misc-utils/copyfilerange.c:99:22: warning[-Wanalyzer-malloc-leak]: leak of ‘range.out_filename’
#   97|   	*token = '\0';
#   98|   	if (*start) {
#   99|-> 		rc = strtosize(start, &tmp);
#  100|   		if (rc && tmp <= SIZE_MAX)
#  101|   			goto fail;

Error: GCC_ANALYZER_WARNING (CWE-401): [#def9]
util-linux-2.42.start/misc-utils/copyfilerange.c:111:22: warning[-Wanalyzer-malloc-leak]: leak of ‘range.in_filename’
#  109|   	*token = '\0';
#  110|   	if (*start) {
#  111|-> 		rc = strtosize(start, &tmp);
#  112|   		if (rc && tmp <= SIZE_MAX)
#  113|   			goto fail;

Error: GCC_ANALYZER_WARNING (CWE-401): [#def10]
util-linux-2.42.start/misc-utils/copyfilerange.c:111:22: warning[-Wanalyzer-malloc-leak]: leak of ‘range.out_filename’
#  109|   	*token = '\0';
#  110|   	if (*start) {
#  111|-> 		rc = strtosize(start, &tmp);
#  112|   		if (rc && tmp <= SIZE_MAX)
#  113|   			goto fail;

Error: GCC_ANALYZER_WARNING (CWE-401): [#def11]
util-linux-2.42.start/misc-utils/copyfilerange.c:119:22: warning[-Wanalyzer-malloc-leak]: leak of ‘range.in_filename’
#  117|   	start = token + 1;
#  118|   	if (*start) {
#  119|-> 		rc = strtosize(start, &tmp);
#  120|   		if (rc && tmp <= SIZE_MAX)
#  121|   			goto fail;

Error: GCC_ANALYZER_WARNING (CWE-401): [#def12]
util-linux-2.42.start/misc-utils/copyfilerange.c:119:22: warning[-Wanalyzer-malloc-leak]: leak of ‘range.out_filename’
#  117|   	start = token + 1;
#  118|   	if (*start) {
#  119|-> 		rc = strtosize(start, &tmp);
#  120|   		if (rc && tmp <= SIZE_MAX)
#  121|   			goto fail;

Error: GCC_ANALYZER_WARNING (CWE-401): [#def13]
util-linux-2.42.start/misc-utils/copyfilerange.c:152:40: warning[-Wanalyzer-malloc-leak]: leak of ‘range.in_filename’
#  150|   			);
#  151|   
#  152|-> 		const ssize_t copied = copy_file_range(
#  153|   			range->in_fd,
#  154|   			&range->in_offset,

Error: GCC_ANALYZER_WARNING (CWE-401): [#def14]
util-linux-2.42.start/misc-utils/copyfilerange.c: scope_hint: In function ‘copy_range’
util-linux-2.42.start/misc-utils/copyfilerange.c:152:40: warning[-Wanalyzer-malloc-leak]: leak of ‘range.out_filename’
#  150|   			);
#  151|   
#  152|-> 		const ssize_t copied = copy_file_range(
#  153|   			range->in_fd,
#  154|   			&range->in_offset,

Error: GCC_ANALYZER_WARNING (CWE-476): [#def15]
util-linux-2.42.start/misc-utils/copyfilerange.c: scope_hint: In function ‘main’
util-linux-2.42.start/misc-utils/copyfilerange.c:222:53: warning[-Wanalyzer-possible-null-dereference]: dereference of possibly-NULL ‘range_files’
#  220|   			if (!range_files)
#  221|   				range_files = xmalloc(sizeof(char *) * argc);
#  222|-> 			range_files[nrange_files++] = xstrdup(optarg);
#  223|   			break;
#  224|   		case 's':

Error: GCC_ANALYZER_WARNING (CWE-401): [#def16]
util-linux-2.42.start/misc-utils/copyfilerange.c:226:33: warning[-Wanalyzer-malloc-leak]: leak of ‘range.in_filename’
util-linux-2.42.start/include/nls.h:27: included_from: Included from here.
util-linux-2.42.start/misc-utils/copyfilerange.c:32: included_from: Included from here.
util-linux-2.42.start/misc-utils/copyfilerange.c:226:52: note: in expansion of macro ‘_’
#  224|   		case 's':
#  225|   			if (range.in_filename)
#  226|-> 				errx(EXIT_FAILURE, _("only one source file is allowed (%s already supplied)"), range.in_filename);
#  227|   			range.in_filename = xstrdup(optarg);
#  228|   			break;

Error: GCC_ANALYZER_WARNING (CWE-401): [#def17]
util-linux-2.42.start/misc-utils/copyfilerange.c:226:33: warning[-Wanalyzer-malloc-leak]: leak of ‘range.out_filename’
util-linux-2.42.start/misc-utils/copyfilerange.c:226:52: note: in expansion of macro ‘_’
#  224|   		case 's':
#  225|   			if (range.in_filename)
#  226|-> 				errx(EXIT_FAILURE, _("only one source file is allowed (%s already supplied)"), range.in_filename);
#  227|   			range.in_filename = xstrdup(optarg);
#  228|   			break;

Error: GCC_ANALYZER_WARNING (CWE-401): [#def18]
util-linux-2.42.start/misc-utils/copyfilerange.c:231:33: warning[-Wanalyzer-malloc-leak]: leak of ‘range.in_filename’
util-linux-2.42.start/misc-utils/copyfilerange.c:231:52: note: in expansion of macro ‘_’
#  229|   		case 'd':
#  230|   			if (range.out_filename)
#  231|-> 				errx(EXIT_FAILURE, _("only one destination file is allowed (%s already supplied)"), range.out_filename);
#  232|   			range.out_filename = xstrdup(optarg);
#  233|   			break;

Error: GCC_ANALYZER_WARNING (CWE-401): [#def19]
util-linux-2.42.start/misc-utils/copyfilerange.c:231:33: warning[-Wanalyzer-malloc-leak]: leak of ‘range.out_filename’
util-linux-2.42.start/misc-utils/copyfilerange.c:231:52: note: in expansion of macro ‘_’
#  229|   		case 'd':
#  230|   			if (range.out_filename)
#  231|-> 				errx(EXIT_FAILURE, _("only one destination file is allowed (%s already supplied)"), range.out_filename);
#  232|   			range.out_filename = xstrdup(optarg);
#  233|   			break;

Error: GCC_ANALYZER_WARNING (CWE-401): [#def20]
util-linux-2.42.start/misc-utils/copyfilerange.c:254:17: warning[-Wanalyzer-malloc-leak]: leak of ‘<unknown>’
util-linux-2.42.start/misc-utils/copyfilerange.c:254:36: note: in expansion of macro ‘_’
#  252|   
#  253|   	if (!range.in_filename)
#  254|-> 		errx(EXIT_FAILURE, _("source file is required"));
#  255|   
#  256|   	if (!range.out_filename)

Error: GCC_ANALYZER_WARNING (CWE-401): [#def21]
util-linux-2.42.start/misc-utils/copyfilerange.c:254:17: warning[-Wanalyzer-malloc-leak]: leak of ‘range.out_filename’
util-linux-2.42.start/misc-utils/copyfilerange.c:254:36: note: in expansion of macro ‘_’
#  252|   
#  253|   	if (!range.in_filename)
#  254|-> 		errx(EXIT_FAILURE, _("source file is required"));
#  255|   
#  256|   	if (!range.out_filename)

Error: GCC_ANALYZER_WARNING (CWE-401): [#def22]
util-linux-2.42.start/misc-utils/copyfilerange.c:254:17: warning[-Wanalyzer-malloc-leak]: leak of ‘range_files’
util-linux-2.42.start/misc-utils/copyfilerange.c:254:36: note: in expansion of macro ‘_’
#  252|   
#  253|   	if (!range.in_filename)
#  254|-> 		errx(EXIT_FAILURE, _("source file is required"));
#  255|   
#  256|   	if (!range.out_filename)

Error: GCC_ANALYZER_WARNING (CWE-401): [#def23]
util-linux-2.42.start/misc-utils/copyfilerange.c:257:17: warning[-Wanalyzer-malloc-leak]: leak of ‘<unknown>’
util-linux-2.42.start/misc-utils/copyfilerange.c:257:36: note: in expansion of macro ‘_’
#  255|   
#  256|   	if (!range.out_filename)
#  257|-> 		errx(EXIT_FAILURE, _("destination file is required"));
#  258|   
#  259|   	range.in_fd = open(range.in_filename, O_RDONLY);

Error: GCC_ANALYZER_WARNING (CWE-401): [#def24]
util-linux-2.42.start/misc-utils/copyfilerange.c:257:17: warning[-Wanalyzer-malloc-leak]: leak of ‘range.in_filename’
util-linux-2.42.start/misc-utils/copyfilerange.c:257:36: note: in expansion of macro ‘_’
#  255|   
#  256|   	if (!range.out_filename)
#  257|-> 		errx(EXIT_FAILURE, _("destination file is required"));
#  258|   
#  259|   	range.in_fd = open(range.in_filename, O_RDONLY);

Error: GCC_ANALYZER_WARNING (CWE-401): [#def25]
util-linux-2.42.start/misc-utils/copyfilerange.c:257:17: warning[-Wanalyzer-malloc-leak]: leak of ‘range_files’
util-linux-2.42.start/misc-utils/copyfilerange.c:257:36: note: in expansion of macro ‘_’
#  255|   
#  256|   	if (!range.out_filename)
#  257|-> 		errx(EXIT_FAILURE, _("destination file is required"));
#  258|   
#  259|   	range.in_fd = open(range.in_filename, O_RDONLY);

Error: GCC_ANALYZER_WARNING (CWE-401): [#def26]
util-linux-2.42.start/misc-utils/copyfilerange.c:259:23: warning[-Wanalyzer-malloc-leak]: leak of ‘range.in_filename’
#  257|   		errx(EXIT_FAILURE, _("destination file is required"));
#  258|   
#  259|-> 	range.in_fd = open(range.in_filename, O_RDONLY);
#  260|   	if (range.in_fd < 0)
#  261|   		err(EXIT_FAILURE, _("cannot open source %s"), range.in_filename);

Error: GCC_ANALYZER_WARNING (CWE-401): [#def27]
util-linux-2.42.start/misc-utils/copyfilerange.c:259:23: warning[-Wanalyzer-malloc-leak]: leak of ‘range.out_filename’
#  257|   		errx(EXIT_FAILURE, _("destination file is required"));
#  258|   
#  259|-> 	range.in_fd = open(range.in_filename, O_RDONLY);
#  260|   	if (range.in_fd < 0)
#  261|   		err(EXIT_FAILURE, _("cannot open source %s"), range.in_filename);

Error: GCC_ANALYZER_WARNING (CWE-401): [#def28]
util-linux-2.42.start/misc-utils/copyfilerange.c:261:17: warning[-Wanalyzer-malloc-leak]: leak of ‘range.in_filename’
#  259|   	range.in_fd = open(range.in_filename, O_RDONLY);
#  260|   	if (range.in_fd < 0)
#  261|-> 		err(EXIT_FAILURE, _("cannot open source %s"), range.in_filename);
#  262|   
#  263|   

Error: GCC_ANALYZER_WARNING (CWE-401): [#def29]
util-linux-2.42.start/misc-utils/copyfilerange.c:261:17: warning[-Wanalyzer-malloc-leak]: leak of ‘range.out_filename’
#  259|   	range.in_fd = open(range.in_filename, O_RDONLY);
#  260|   	if (range.in_fd < 0)
#  261|-> 		err(EXIT_FAILURE, _("cannot open source %s"), range.in_filename);
#  262|   
#  263|   

Error: GCC_ANALYZER_WARNING (CWE-401): [#def30]
util-linux-2.42.start/misc-utils/copyfilerange.c:265:17: warning[-Wanalyzer-malloc-leak]: leak of ‘range.in_filename’
#  263|   
#  264|   	if (fstat(range.in_fd, &sb) == -1)
#  265|-> 		err(EXIT_FAILURE, _("cannot determine size of source file %s"), range.in_filename);
#  266|   	range.in_st_size = sb.st_size;
#  267|   

Error: GCC_ANALYZER_WARNING (CWE-401): [#def31]
util-linux-2.42.start/misc-utils/copyfilerange.c:265:17: warning[-Wanalyzer-malloc-leak]: leak of ‘range.out_filename’
#  263|   
#  264|   	if (fstat(range.in_fd, &sb) == -1)
#  265|-> 		err(EXIT_FAILURE, _("cannot determine size of source file %s"), range.in_filename);
#  266|   	range.in_st_size = sb.st_size;
#  267|   

Error: GCC_ANALYZER_WARNING (CWE-401): [#def32]
util-linux-2.42.start/misc-utils/copyfilerange.c:268:24: warning[-Wanalyzer-malloc-leak]: leak of ‘range.in_filename’
#  266|   	range.in_st_size = sb.st_size;
#  267|   
#  268|-> 	range.out_fd = open(range.out_filename, O_WRONLY | O_CREAT, 0666);
#  269|   	if (range.out_fd < 0)
#  270|   		err(EXIT_FAILURE, _("cannot open destination %s"), argv[2]);

Error: GCC_ANALYZER_WARNING (CWE-401): [#def33]
util-linux-2.42.start/misc-utils/copyfilerange.c:268:24: warning[-Wanalyzer-malloc-leak]: leak of ‘range.out_filename’
#  266|   	range.in_st_size = sb.st_size;
#  267|   
#  268|-> 	range.out_fd = open(range.out_filename, O_WRONLY | O_CREAT, 0666);
#  269|   	if (range.out_fd < 0)
#  270|   		err(EXIT_FAILURE, _("cannot open destination %s"), argv[2]);

Error: GCC_ANALYZER_WARNING (CWE-401): [#def34]
util-linux-2.42.start/misc-utils/copyfilerange.c:270:17: warning[-Wanalyzer-malloc-leak]: leak of ‘range.in_filename’
#  268|   	range.out_fd = open(range.out_filename, O_WRONLY | O_CREAT, 0666);
#  269|   	if (range.out_fd < 0)
#  270|-> 		err(EXIT_FAILURE, _("cannot open destination %s"), argv[2]);
#  271|   
#  272|   	for (size_t i = 0; i < nrange_files; i++) {

Error: GCC_ANALYZER_WARNING (CWE-401): [#def35]
util-linux-2.42.start/misc-utils/copyfilerange.c:270:17: warning[-Wanalyzer-malloc-leak]: leak of ‘range.out_filename’
#  268|   	range.out_fd = open(range.out_filename, O_WRONLY | O_CREAT, 0666);
#  269|   	if (range.out_fd < 0)
#  270|-> 		err(EXIT_FAILURE, _("cannot open destination %s"), argv[2]);
#  271|   
#  272|   	for (size_t i = 0; i < nrange_files; i++) {

Error: GCC_ANALYZER_WARNING (CWE-476): [#def36]
util-linux-2.42.start/misc-utils/logger.c:1053:24: warning[-Wanalyzer-possible-null-dereference]: dereference of possibly-NULL ‘xmalloc(*ctl.max_message_size + 4)’
# 1051|   			c = getchar();
# 1052|   		}
# 1053|-> 		buf[i] = '\0';
# 1054|   
# 1055|   		if (i > 0 || !ctl->skip_empty_lines) {

Error: GCC_ANALYZER_WARNING (CWE-476): [#def37]
util-linux-2.42.start/misc-utils/waitpid.c: scope_hint: In function ‘parse_pids’
util-linux-2.42.start/misc-utils/waitpid.c:53:25: warning[-Wanalyzer-null-dereference]: dereference of NULL ‘xcalloc(n_strings, 4)’
util-linux-2.42.start/include/strutils.h:55:64: note: in definition of macro ‘strtopid_or_err’
util-linux-2.42.start/misc-utils/waitpid.c:53:55: note: in expansion of macro ‘_’
#   51|   
#   52|   	for (size_t i = 0; i < n_strings; i++)
#   53|-> 		pids[i] = strtopid_or_err(strings[i], _("invalid PID argument"));
#   54|   
#   55|   	return pids;

Scan Properties

analyzer-version-clippy1.92.0
analyzer-version-cppcheck2.19.1
analyzer-version-gcc16.0.0
analyzer-version-gcc-analyzer16.0.0
analyzer-version-shellcheck0.11.0
analyzer-version-unicontrol0.0.2
diffbase-analyzer-version-clippy1.92.0
diffbase-analyzer-version-cppcheck2.19.1
diffbase-analyzer-version-gcc16.0.0
diffbase-analyzer-version-gcc-analyzer16.0.0
diffbase-analyzer-version-shellcheck0.11.0
diffbase-analyzer-version-unicontrol0.0.2
diffbase-enabled-pluginsclippy, cppcheck, gcc, shellcheck, unicontrol
diffbase-exit-code0
diffbase-hostip-172-16-1-85.us-west-2.compute.internal
diffbase-known-false-positives/usr/share/csmock/known-false-positives.js
diffbase-known-false-positives-rpmknown-false-positives-0.0.0.20250521.132812.g8eff701.main-1.el9.noarch
diffbase-mock-configfedora-rawhide-x86_64
diffbase-project-nameutil-linux-2.42.start-7.20260114150421569532.master.1196.g9808d0c9b
diffbase-store-results-to/tmp/tmpz503oe5a/util-linux-2.42.start-7.20260114150421569532.master.1196.g9808d0c9b.tar.xz
diffbase-time-created2026-01-15 09:42:21
diffbase-time-finished2026-01-15 09:58:53
diffbase-toolcsmock
diffbase-tool-args'/usr/bin/csmock' '-r' 'fedora-rawhide-x86_64' '-t' 'gcc,cppcheck,clippy,shellcheck,unicontrol' '-o' '/tmp/tmpz503oe5a/util-linux-2.42.start-7.20260114150421569532.master.1196.g9808d0c9b.tar.xz' '--gcc-analyze' '--unicontrol-notests' '--unicontrol-bidi-only' '--install' 'pam' '/tmp/tmpz503oe5a/util-linux-2.42.start-7.20260114150421569532.master.1196.g9808d0c9b.src.rpm'
diffbase-tool-versioncsmock-3.8.3.20251215.161544.g62de9a5-1.el9
enabled-pluginsclippy, cppcheck, gcc, shellcheck, unicontrol
exit-code0
hostip-172-16-1-85.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-nameutil-linux-2.42.start-7.20260115093036528659.pr3947.1232.g92bf1477f
store-results-to/tmp/tmpyqii982k/util-linux-2.42.start-7.20260115093036528659.pr3947.1232.g92bf1477f.tar.xz
time-created2026-01-15 09:59:24
time-finished2026-01-15 10:17:01
titleNewly introduced findings
toolcsmock
tool-args'/usr/bin/csmock' '-r' 'fedora-rawhide-x86_64' '-t' 'gcc,cppcheck,clippy,shellcheck,unicontrol' '-o' '/tmp/tmpyqii982k/util-linux-2.42.start-7.20260115093036528659.pr3947.1232.g92bf1477f.tar.xz' '--gcc-analyze' '--unicontrol-notests' '--unicontrol-bidi-only' '--install' 'pam' '/tmp/tmpyqii982k/util-linux-2.42.start-7.20260115093036528659.pr3947.1232.g92bf1477f.src.rpm'
tool-versioncsmock-3.8.3.20251215.161544.g62de9a5-1.el9