aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--src/afl-fuzz-init.c8
1 files changed, 5 insertions, 3 deletions
diff --git a/src/afl-fuzz-init.c b/src/afl-fuzz-init.c
index a9397232..af6e6d4c 100644
--- a/src/afl-fuzz-init.c
+++ b/src/afl-fuzz-init.c
@@ -1714,13 +1714,15 @@ static u8 delete_files(u8 *path, u8 *prefix) {
while ((d_ent = readdir(d))) {
- if (d_ent->d_name[0] != '.' &&
- (!prefix || !strncmp(d_ent->d_name, prefix, strlen(prefix)))) {
+ if ((d_ent->d_name[0] != '.' &&
+ (!prefix || !strncmp(d_ent->d_name, prefix, strlen(prefix))))
+ /* heiko: don't forget the SHA1 files */
+ || strspn(d_ent->d_name, "0123456789abcdef") == 2 * 20 /* TODO use 2 * HASH_LENGTH */
+ ) {
u8 *fname = alloc_printf("%s/%s", path, d_ent->d_name);
if (unlink(fname)) { PFATAL("Unable to delete '%s'", fname); }
ck_free(fname);
-
}
}