diff options
Diffstat (limited to 'src')
-rw-r--r-- | src/afl-analyze.c | 15 | ||||
-rw-r--r-- | src/afl-fuzz-python.c | 9 | ||||
-rw-r--r-- | src/afl-fuzz.c | 10 | ||||
-rw-r--r-- | src/afl-showmap.c | 15 | ||||
-rw-r--r-- | src/afl-tmin.c | 15 |
5 files changed, 42 insertions, 22 deletions
diff --git a/src/afl-analyze.c b/src/afl-analyze.c index 0a9b4785..f71893d8 100644 --- a/src/afl-analyze.c +++ b/src/afl-analyze.c @@ -716,11 +716,15 @@ static void set_up_environment(void) { u8* qemu_preload = getenv("QEMU_SET_ENV"); u8* afl_preload = getenv("AFL_PRELOAD"); u8* buf; - + s32 i, afl_preload_size = strlen(afl_preload); for (i = 0; i < afl_preload_size; ++i) { + if (afl_preload[i] == ',') - PFATAL("Comma (',') is not allowed in AFL_PRELOAD when -Q is specified!"); + PFATAL( + "Comma (',') is not allowed in AFL_PRELOAD when -Q is " + "specified!"); + } if (qemu_preload) @@ -729,7 +733,7 @@ static void set_up_environment(void) { buf = alloc_printf("LD_PRELOAD=%s", afl_preload); setenv("QEMU_SET_ENV", buf, 1); - + ck_free(buf); } else { @@ -861,9 +865,8 @@ static void find_binary(u8* fname) { int main(int argc, char** argv) { - s32 opt; - u8 mem_limit_given = 0, timeout_given = 0, unicorn_mode = 0, - use_wine = 0; + s32 opt; + u8 mem_limit_given = 0, timeout_given = 0, unicorn_mode = 0, use_wine = 0; char** use_argv; doc_path = access(DOC_PATH, F_OK) ? "docs" : DOC_PATH; diff --git a/src/afl-fuzz-python.c b/src/afl-fuzz-python.c index 73fcd138..6800c0c0 100644 --- a/src/afl-fuzz-python.c +++ b/src/afl-fuzz-python.c @@ -345,7 +345,12 @@ u8 trim_case_python(char** argv, struct queue_entry* q, u8* in_buf) { fault = run_target(argv, exec_tmout); ++trim_execs; - if (stop_soon || fault == FAULT_ERROR) goto abort_trimming; + if (stop_soon || fault == FAULT_ERROR) { + + free(retbuf); + goto abort_trimming; + + } cksum = hash32(trace_bits, MAP_SIZE, HASH_CONST); @@ -381,6 +386,8 @@ u8 trim_case_python(char** argv, struct queue_entry* q, u8* in_buf) { } + free(retbuf); + /* Since this can be slow, update the screen every now and then. */ if (!(trim_exec++ % stats_update_freq)) show_stats(); diff --git a/src/afl-fuzz.c b/src/afl-fuzz.c index 7df82b12..ebc11f01 100644 --- a/src/afl-fuzz.c +++ b/src/afl-fuzz.c @@ -717,11 +717,15 @@ int main(int argc, char** argv) { u8* qemu_preload = getenv("QEMU_SET_ENV"); u8* afl_preload = getenv("AFL_PRELOAD"); u8* buf; - + s32 i, afl_preload_size = strlen(afl_preload); for (i = 0; i < afl_preload_size; ++i) { + if (afl_preload[i] == ',') - PFATAL("Comma (',') is not allowed in AFL_PRELOAD when -Q is specified!"); + PFATAL( + "Comma (',') is not allowed in AFL_PRELOAD when -Q is " + "specified!"); + } if (qemu_preload) @@ -730,7 +734,7 @@ int main(int argc, char** argv) { buf = alloc_printf("LD_PRELOAD=%s", afl_preload); setenv("QEMU_SET_ENV", buf, 1); - + ck_free(buf); } else { diff --git a/src/afl-showmap.c b/src/afl-showmap.c index 0e3e5351..94bbd421 100644 --- a/src/afl-showmap.c +++ b/src/afl-showmap.c @@ -365,11 +365,15 @@ static void set_up_environment(void) { u8* qemu_preload = getenv("QEMU_SET_ENV"); u8* afl_preload = getenv("AFL_PRELOAD"); u8* buf; - + s32 i, afl_preload_size = strlen(afl_preload); for (i = 0; i < afl_preload_size; ++i) { + if (afl_preload[i] == ',') - PFATAL("Comma (',') is not allowed in AFL_PRELOAD when -Q is specified!"); + PFATAL( + "Comma (',') is not allowed in AFL_PRELOAD when -Q is " + "specified!"); + } if (qemu_preload) @@ -378,7 +382,7 @@ static void set_up_environment(void) { buf = alloc_printf("LD_PRELOAD=%s", afl_preload); setenv("QEMU_SET_ENV", buf, 1); - + ck_free(buf); } else { @@ -524,9 +528,8 @@ static void find_binary(u8* fname) { int main(int argc, char** argv) { - s32 opt; - u8 mem_limit_given = 0, timeout_given = 0, unicorn_mode = 0, - use_wine = 0; + s32 opt; + u8 mem_limit_given = 0, timeout_given = 0, unicorn_mode = 0, use_wine = 0; u32 tcnt = 0; char** use_argv; diff --git a/src/afl-tmin.c b/src/afl-tmin.c index 3230c952..b98208f9 100644 --- a/src/afl-tmin.c +++ b/src/afl-tmin.c @@ -889,11 +889,15 @@ static void set_up_environment(void) { u8* qemu_preload = getenv("QEMU_SET_ENV"); u8* afl_preload = getenv("AFL_PRELOAD"); u8* buf; - + s32 i, afl_preload_size = strlen(afl_preload); for (i = 0; i < afl_preload_size; ++i) { + if (afl_preload[i] == ',') - PFATAL("Comma (',') is not allowed in AFL_PRELOAD when -Q is specified!"); + PFATAL( + "Comma (',') is not allowed in AFL_PRELOAD when -Q is " + "specified!"); + } if (qemu_preload) @@ -902,7 +906,7 @@ static void set_up_environment(void) { buf = alloc_printf("LD_PRELOAD=%s", afl_preload); setenv("QEMU_SET_ENV", buf, 1); - + ck_free(buf); } else { @@ -1052,9 +1056,8 @@ static void read_bitmap(u8* fname) { int main(int argc, char** argv) { - s32 opt; - u8 mem_limit_given = 0, timeout_given = 0, unicorn_mode = 0, - use_wine = 0; + s32 opt; + u8 mem_limit_given = 0, timeout_given = 0, unicorn_mode = 0, use_wine = 0; char** use_argv; doc_path = access(DOC_PATH, F_OK) ? "docs" : DOC_PATH; |