diff options
author | Stefan Weil <weil@mail.berlios.de> | 2011-04-03 21:36:36 +0200 |
---|---|---|
committer | Edgar E. Iglesias <edgar.iglesias@gmail.com> | 2011-04-03 21:58:38 +0200 |
commit | 2917dce477f91e933052f5555b4c6be961ff624e (patch) | |
tree | e37790dd76f7d53761522dea178296251db90501 /tests | |
parent | 9bcfc7daabb138b0fe3d64d74892942d482e5bbd (diff) | |
download | qemu-2917dce477f91e933052f5555b4c6be961ff624e.zip qemu-2917dce477f91e933052f5555b4c6be961ff624e.tar.gz qemu-2917dce477f91e933052f5555b4c6be961ff624e.tar.bz2 |
tests/cris: Fix some errors and potential crashes
These errors were reported by cppcheck:
tests/cris/check_openpf1.c:30: error:
Mismatching allocation and deallocation: f
tests/cris/check_openpf2.c:13: error:
Mismatching allocation and deallocation: f
tests/cris/check_stat3.c:16: error:
Buffer overrun possible for long cmd-line args
tests/cris/check_stat4.c:18: error:
Buffer overrun possible for long cmd-line args
The first two are obvious coding errors (fopen needs fclose, not close).
The last two may seem less important (nobody will start test code
with an argument of more than 1022 characters which raises a buffer
overrun). Fixing them nevertheless helps with static code checks
like those done by cppcheck.
Signed-off-by: Stefan Weil <weil@mail.berlios.de>
Signed-off-by: Edgar E. Iglesias <edgar.iglesias@gmail.com>
Diffstat (limited to 'tests')
-rw-r--r-- | tests/cris/check_openpf1.c | 2 | ||||
-rw-r--r-- | tests/cris/check_openpf2.c | 2 | ||||
-rw-r--r-- | tests/cris/check_stat3.c | 2 | ||||
-rw-r--r-- | tests/cris/check_stat4.c | 2 |
4 files changed, 4 insertions, 4 deletions
diff --git a/tests/cris/check_openpf1.c b/tests/cris/check_openpf1.c index 1d71e0b..fdcf4c5 100644 --- a/tests/cris/check_openpf1.c +++ b/tests/cris/check_openpf1.c @@ -27,7 +27,7 @@ int main (int argc, char *argv[]) f = fopen (fnam, "rb"); if (f == NULL) abort (); - close (f); + fclose(f); /* Cover another execution path. */ if (fopen ("/nonexistent", "rb") != NULL diff --git a/tests/cris/check_openpf2.c b/tests/cris/check_openpf2.c index f44a8f3..5d56189 100644 --- a/tests/cris/check_openpf2.c +++ b/tests/cris/check_openpf2.c @@ -10,7 +10,7 @@ int main (int argc, char *argv[]) FILE *f = fopen ("check_openpf2.c", "rb"); if (f == NULL) abort (); - close (f); + fclose(f); printf ("pass\n"); return 0; } diff --git a/tests/cris/check_stat3.c b/tests/cris/check_stat3.c index 3b5b217..36a9d5d 100644 --- a/tests/cris/check_stat3.c +++ b/tests/cris/check_stat3.c @@ -13,7 +13,7 @@ int main (int argc, char *argv[]) char path[1024] = "/"; struct stat buf; - strcat (path, argv[0]); + strncat(path, argv[0], sizeof(path) - 2); if (stat (".", &buf) != 0 || !S_ISDIR (buf.st_mode)) abort (); diff --git a/tests/cris/check_stat4.c b/tests/cris/check_stat4.c index e1955ca..04f21fe 100644 --- a/tests/cris/check_stat4.c +++ b/tests/cris/check_stat4.c @@ -15,7 +15,7 @@ int main (int argc, char *argv[]) char path[1024] = "/"; struct stat buf; - strcat (path, argv[0]); + strncat(path, argv[0], sizeof(path) - 2); if (lstat (".", &buf) != 0 || !S_ISDIR (buf.st_mode)) abort (); |