Skip to content

Commit 25a46a8

Browse files
committed
C++: Use appropriate sizeof in CWE-119 memcpy tests
Signed-off-by: Mingjie Shen <shen497@purdue.edu>
1 parent b293dfe commit 25a46a8

File tree

1 file changed

+8
-8
lines changed
  • cpp/ql/test/query-tests/Security/CWE/CWE-119/semmle/tests

1 file changed

+8
-8
lines changed

cpp/ql/test/query-tests/Security/CWE/CWE-119/semmle/tests/tests.cpp

Lines changed: 8 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -30,10 +30,10 @@ void test2()
3030
char *smallbuffer = (char *)malloc(sizeof(char) * 10);
3131
char *bigbuffer = (char *)malloc(sizeof(char) * 20);
3232

33-
memcpy(bigbuffer, smallbuffer, 10); // GOOD
34-
memcpy(bigbuffer, smallbuffer, 20); // BAD: over-read
35-
memcpy(smallbuffer, bigbuffer, 10); // GOOD
36-
memcpy(smallbuffer, bigbuffer, 20); // BAD: over-write
33+
memcpy(bigbuffer, smallbuffer, sizeof(char) * 10); // GOOD
34+
memcpy(bigbuffer, smallbuffer, sizeof(char) * 20); // BAD: over-read
35+
memcpy(smallbuffer, bigbuffer, sizeof(char) * 10); // GOOD
36+
memcpy(smallbuffer, bigbuffer, sizeof(char) * 20); // BAD: over-write
3737

3838
free(bigbuffer);
3939
free(smallbuffer);
@@ -46,10 +46,10 @@ void test3()
4646
smallbuffer = new char[10];
4747
bigbuffer = new char[20];
4848

49-
memcpy(bigbuffer, smallbuffer, 10); // GOOD
50-
memcpy(bigbuffer, smallbuffer, 20); // BAD: over-read
51-
memcpy(smallbuffer, bigbuffer, 10); // GOOD
52-
memcpy(smallbuffer, bigbuffer, 20); // BAD: over-write
49+
memcpy(bigbuffer, smallbuffer, sizeof(char[10])); // GOOD
50+
memcpy(bigbuffer, smallbuffer, sizeof(char[20])); // BAD: over-read
51+
memcpy(smallbuffer, bigbuffer, sizeof(char[10])); // GOOD
52+
memcpy(smallbuffer, bigbuffer, sizeof(char[20])); // BAD: over-write
5353

5454
delete [] bigbuffer;
5555
delete [] smallbuffer;

0 commit comments

Comments
 (0)