diff options
Diffstat (limited to 'tests/conntrack')
-rw-r--r-- | tests/conntrack/test-conntrack.c | 14 |
1 files changed, 10 insertions, 4 deletions
diff --git a/tests/conntrack/test-conntrack.c b/tests/conntrack/test-conntrack.c index c9097b6..7ce069b 100644 --- a/tests/conntrack/test-conntrack.c +++ b/tests/conntrack/test-conntrack.c @@ -23,14 +23,16 @@ int main() { int ret, ok = 0, bad = 0, line; FILE *fp; - DIR *d; char buf[1024]; + struct dirent **dents; struct dirent *dent; char file[1024]; + int i,n; - d = opendir("testsuite"); + n = scandir("testsuite", &dents, NULL, alphasort); - while ((dent = readdir(d)) != NULL) { + for (i = 0; i < n; i++) { + dent = dents[i]; sprintf(file, "testsuite/%s", dent->d_name); @@ -88,7 +90,11 @@ int main() } fclose(fp); } - closedir(d); + + for (i = 0; i < n; i++) + free(dents[i]); + + free(dents); fprintf(stdout, "OK: %d BAD: %d\n", ok, bad); } |