about summary refs log tree commit diff
path: root/src/afl-fuzz-run.c
diff options
context:
space:
mode:
authorAndrea Fioraldi <andreafioraldi@gmail.com>2020-03-04 18:38:03 +0100
committerGitHub <noreply@github.com>2020-03-04 18:38:03 +0100
commite43473faefffb93c7b3013dc25c07044a7656e7f (patch)
treed386d4f2da9242c97685257529a656373d1dd02c /src/afl-fuzz-run.c
parent05a3418f8668cadd17e32fd89bfcf136faa61f52 (diff)
parent38e7dd2b9efbd9c6cda47774630a82660d3156b3 (diff)
downloadafl++-e43473faefffb93c7b3013dc25c07044a7656e7f.tar.gz
Merge pull request #221 from h1994st/master
Uniform Python and custom mutator API
Diffstat (limited to 'src/afl-fuzz-run.c')
-rw-r--r--src/afl-fuzz-run.c10
1 files changed, 5 insertions, 5 deletions
diff --git a/src/afl-fuzz-run.c b/src/afl-fuzz-run.c
index 95c2c5d4..12352355 100644
--- a/src/afl-fuzz-run.c
+++ b/src/afl-fuzz-run.c
@@ -309,11 +309,12 @@ void write_to_testcase(void* mem, u32 len) {
 
     lseek(fd, 0, SEEK_SET);
 
-  if (pre_save_handler) {
+  if (mutator && mutator->afl_custom_pre_save) {
 
     u8*    new_data;
-    size_t new_size = pre_save_handler(mem, len, &new_data);
+    size_t new_size = mutator->afl_custom_pre_save(mem, len, &new_data);
     ck_write(fd, new_data, new_size, out_file);
+    ck_free(new_data);
 
   } else {
 
@@ -678,9 +679,8 @@ void sync_fuzzers(char** argv) {
 
 u8 trim_case(char** argv, struct queue_entry* q, u8* in_buf) {
 
-#ifdef USE_PYTHON
-  if (py_functions[PY_FUNC_TRIM]) return trim_case_python(argv, q, in_buf);
-#endif
+  /* Custom mutator trimmer */
+  if (mutator->afl_custom_trim) return trim_case_custom(argv, q, in_buf);
 
   static u8 tmp[64];
   static u8 clean_trace[MAP_SIZE];