diff options
author | Dominik Maier <domenukk@gmail.com> | 2020-03-05 20:23:04 +0100 |
---|---|---|
committer | GitHub <noreply@github.com> | 2020-03-05 20:23:04 +0100 |
commit | 3ac568c40cad0e7a282de7700fac8001d80de950 (patch) | |
tree | a426d5a556b6ae3bbe05e31cc4a8f416f407fed0 | |
parent | 90409f383a728fdcf4d66ffc607f1e3eb70b9203 (diff) | |
download | afl++-3ac568c40cad0e7a282de7700fac8001d80de950.tar.gz |
Fix leaks when stopping afl (#228)
-rw-r--r-- | src/afl-common.c | 1 | ||||
-rw-r--r-- | src/afl-fuzz-run.c | 3 |
2 files changed, 3 insertions, 1 deletions
diff --git a/src/afl-common.c b/src/afl-common.c index 46d7de26..20fc424a 100644 --- a/src/afl-common.c +++ b/src/afl-common.c @@ -156,6 +156,7 @@ char** get_qemu_argv(u8* own_loc, char** argv, int argc) { if (!access(BIN_PATH "/afl-qemu-trace", X_OK)) { + ck_free(cp); target_path = new_argv[0] = ck_strdup(BIN_PATH "/afl-qemu-trace"); return new_argv; diff --git a/src/afl-fuzz-run.c b/src/afl-fuzz-run.c index 56c52c9b..58985d8b 100644 --- a/src/afl-fuzz-run.c +++ b/src/afl-fuzz-run.c @@ -643,7 +643,7 @@ void sync_fuzzers(char** argv) { fault = run_target(argv, exec_tmout); - if (stop_soon) return; + if (stop_soon) goto close_sync; syncing_party = sd_ent->d_name; queued_imported += save_if_interesting(argv, mem, st.st_size, fault); @@ -662,6 +662,7 @@ void sync_fuzzers(char** argv) { ck_write(id_fd, &next_min_accept, sizeof(u32), qd_synced_path); +close_sync: close(id_fd); closedir(qd); ck_free(qd_path); |