mtdev-1.1.6-13.fc45

List of Findings

Error: CPPCHECK_WARNING (CWE-457): [#def1]
mtdev-1.1.6/src/core.c:137: warning[uninitvar]: Uninitialized variable: nx
#  135|   		ny[i] = data[i].position_y;
#  136|   	}
#  137|-> 	solve(state, dev, sid, sx, sy, sn, nid, nx, ny, size, touch);
#  138|   	for (i = 0; i < size; i++) {
#  139|   		data[i].tracking_id = GETBIT(touch, i) ? nid[i] : MT_ID_NULL;

Error: CPPCHECK_WARNING (CWE-457): [#def2]
mtdev-1.1.6/src/core.c:137: warning[uninitvar]: Uninitialized variable: ny
#  135|   		ny[i] = data[i].position_y;
#  136|   	}
#  137|-> 	solve(state, dev, sid, sx, sy, sn, nid, nx, ny, size, touch);
#  138|   	for (i = 0; i < size; i++) {
#  139|   		data[i].tracking_id = GETBIT(touch, i) ? nid[i] : MT_ID_NULL;

Error: CPPCHECK_WARNING (CWE-457): [#def3]
mtdev-1.1.6/src/core.c:137: warning[uninitvar]: Uninitialized variable: sid
#  135|   		ny[i] = data[i].position_y;
#  136|   	}
#  137|-> 	solve(state, dev, sid, sx, sy, sn, nid, nx, ny, size, touch);
#  138|   	for (i = 0; i < size; i++) {
#  139|   		data[i].tracking_id = GETBIT(touch, i) ? nid[i] : MT_ID_NULL;

Error: CPPCHECK_WARNING (CWE-457): [#def4]
mtdev-1.1.6/src/core.c:137: warning[uninitvar]: Uninitialized variable: sx
#  135|   		ny[i] = data[i].position_y;
#  136|   	}
#  137|-> 	solve(state, dev, sid, sx, sy, sn, nid, nx, ny, size, touch);
#  138|   	for (i = 0; i < size; i++) {
#  139|   		data[i].tracking_id = GETBIT(touch, i) ? nid[i] : MT_ID_NULL;

Error: CPPCHECK_WARNING (CWE-457): [#def5]
mtdev-1.1.6/src/core.c:137: warning[uninitvar]: Uninitialized variable: sy
#  135|   		ny[i] = data[i].position_y;
#  136|   	}
#  137|-> 	solve(state, dev, sid, sx, sy, sn, nid, nx, ny, size, touch);
#  138|   	for (i = 0; i < size; i++) {
#  139|   		data[i].tracking_id = GETBIT(touch, i) ? nid[i] : MT_ID_NULL;

Error: COMPILER_WARNING: [#def6]
mtdev-1.1.6/test/mtdev-matching.c: scope_hint: In function ‘test1’
mtdev-1.1.6/test/mtdev-matching.c:58:9: warning[-Wstringop-overflow=]: ‘mtdev_match’ accessing 4096 bytes in a region of size 64
#   58 |         mtdev_match(index, A, 4, 4);
#      |         ^~~~~~~~~~~~~~~~~~~~~~~~~~~
mtdev-1.1.6/test/mtdev-matching.c:58:9: note: referencing argument 2 of type ‘int[1024]’
mtdev-1.1.6/test/mtdev-matching.c:29: included_from: Included from here.
mtdev-1.1.6/src/match.h:40:6: note: in a call to function ‘mtdev_match’
#   40 | void mtdev_match(int index[DIM_FINGER], int A[DIM2_FINGER],
#      |      ^~~~~~~~~~~
#   56|   	};
#   57|   	int index[DIM_FINGER], i;
#   58|-> 	mtdev_match(index, A, 4, 4);
#   59|   	for (i = 0; i < 4; i++)
#   60|   		printf("match[%d] = %d\n", i, index[i]);

Error: COMPILER_WARNING: [#def7]
mtdev-1.1.6/test/mtdev-matching.c:58:9: warning[-Wstringop-overflow=]: ‘mtdev_match’ accessing 4096 bytes in a region of size 64
#   56|   	};
#   57|   	int index[DIM_FINGER], i;
#   58|-> 	mtdev_match(index, A, 4, 4);
#   59|   	for (i = 0; i < 4; i++)
#   60|   		printf("match[%d] = %d\n", i, index[i]);

Error: COMPILER_WARNING: [#def8]
mtdev-1.1.6/test/mtdev-matching.c: scope_hint: In function ‘test2’
mtdev-1.1.6/test/mtdev-matching.c:93:9: warning[-Wstringop-overflow=]: ‘mtdev_match’ accessing 4096 bytes in a region of size 100
#   93 |         mtdev_match(index, A, 5, 5);
#      |         ^~~~~~~~~~~~~~~~~~~~~~~~~~~
mtdev-1.1.6/test/mtdev-matching.c:93:9: note: referencing argument 2 of type ‘int[1024]’
mtdev-1.1.6/src/match.h:40:6: note: in a call to function ‘mtdev_match’
#   40 | void mtdev_match(int index[DIM_FINGER], int A[DIM2_FINGER],
#      |      ^~~~~~~~~~~
#   91|   	};
#   92|   	int index[DIM_FINGER], i;
#   93|-> 	mtdev_match(index, A, 5, 5);
#   94|   	for (i = 0; i < 5; i++)
#   95|   		printf("match[%d] = %d\n", i, index[i]);

Error: COMPILER_WARNING: [#def9]
mtdev-1.1.6/test/mtdev-matching.c:93:9: warning[-Wstringop-overflow=]: ‘mtdev_match’ accessing 4096 bytes in a region of size 100
#   91|   	};
#   92|   	int index[DIM_FINGER], i;
#   93|-> 	mtdev_match(index, A, 5, 5);
#   94|   	for (i = 0; i < 5; i++)
#   95|   		printf("match[%d] = %d\n", i, index[i]);

Error: COMPILER_WARNING: [#def10]
mtdev-1.1.6/test/mtdev-test.c: scope_hint: In function ‘print_event’
mtdev-1.1.6/test/mtdev-test.c:59:32: warning[-Wformat=]: format ‘%llx’ expects argument of type ‘long long unsigned int’, but argument 3 has type ‘mstime_t’ {aka ‘long unsigned int’}
#   59 |         fprintf(stderr, "%012llx %02d %01d %04x %d\n",
#      |                          ~~~~~~^
#      |                                |
#      |                                long long unsigned int
#      |                          %012lx
#   60 |                 evtime, slot, ev->type, ev->code, ev->value);
#      |                 ~~~~~~          
#      |                 |
#      |                 mstime_t {aka long unsigned int}
#   57|   	if (ev->type == EV_ABS && ev->code == ABS_MT_SLOT)
#   58|   		slot = ev->value;
#   59|-> 	fprintf(stderr, "%012llx %02d %01d %04x %d\n",
#   60|   		evtime, slot, ev->type, ev->code, ev->value);
#   61|   }

Scan Properties

analyzer-version-clippy1.97.1
analyzer-version-cppcheck2.21.1
analyzer-version-gcc16.1.1
analyzer-version-gcc-analyzer16.1.1
analyzer-version-shellcheck0.11.0
analyzer-version-unicontrol0.0.2
enabled-pluginsclippy, cppcheck, gcc, shellcheck, unicontrol
exit-code0
hostip-172-16-1-243.us-west-2.compute.internal
known-false-positives/usr/share/csmock/known-false-positives.js
known-false-positives-rpmknown-false-positives-0.0.0.20260524.213755.g3c6d0be.main-1.el9.noarch
mock-configfedora-rawhide-x86_64
project-namemtdev-1.1.6-13.fc45
store-results-to/tmp/tmpg0jy1fmy/mtdev-1.1.6-13.fc45.tar.xz
time-created2026-08-03 18:35:23
time-finished2026-08-03 18:36:30
toolcsmock
tool-args'/usr/bin/csmock' '-r' 'fedora-rawhide-x86_64' '-t' 'gcc,clippy,unicontrol,shellcheck,cppcheck' '-o' '/tmp/tmpg0jy1fmy/mtdev-1.1.6-13.fc45.tar.xz' '--gcc-analyze' '--unicontrol-notests' '--unicontrol-bidi-only' '--install' 'pam' '--gcc-analyzer-bin=/usr/bin/gcc' '/tmp/tmpg0jy1fmy/mtdev-1.1.6-13.fc45.src.rpm'
tool-versioncsmock-3.8.7.20260803.142340.gb75b18e-1.el9