diff options
-rw-r--r-- | dynamic_list.txt | 1 | ||||
-rw-r--r-- | frida_mode/include/instrument.h | 2 | ||||
-rw-r--r-- | frida_mode/src/instrument/instrument.c | 2 | ||||
-rw-r--r-- | instrumentation/afl-compiler-rt.o.c | 2 |
4 files changed, 3 insertions, 4 deletions
diff --git a/dynamic_list.txt b/dynamic_list.txt index 1a5c514a..50c0c6b8 100644 --- a/dynamic_list.txt +++ b/dynamic_list.txt @@ -30,7 +30,6 @@ "__afl_selective_coverage_temp"; "__afl_sharedmem_fuzzing"; "__afl_trace"; - "__afl_ijon_set"; "__cmplog_ins_hook1"; "__cmplog_ins_hook16"; "__cmplog_ins_hook2"; diff --git a/frida_mode/include/instrument.h b/frida_mode/include/instrument.h index 7f4958a2..a1969e37 100644 --- a/frida_mode/include/instrument.h +++ b/frida_mode/include/instrument.h @@ -22,7 +22,7 @@ extern guint64 instrument_fixed_seed; extern uint8_t *__afl_area_ptr; extern uint32_t __afl_map_size; -extern void __afl_ijon_set(uint32_t); +extern void __afl_coverage_interesting(uint8_t, uint32_t); extern __thread guint64 *instrument_previous_pc_addr; diff --git a/frida_mode/src/instrument/instrument.c b/frida_mode/src/instrument/instrument.c index e0495cdf..d30e21ec 100644 --- a/frida_mode/src/instrument/instrument.c +++ b/frida_mode/src/instrument/instrument.c @@ -451,7 +451,7 @@ void instrument_regs_format(int fd, char *format, ...) { void ijon_set(uint32_t edge) { - __afl_area_ptr[edge % __afl_map_size] |= 1; + __afl_coverage_interesting(1, edge); } diff --git a/instrumentation/afl-compiler-rt.o.c b/instrumentation/afl-compiler-rt.o.c index c08e6380..f28f5ea4 100644 --- a/instrumentation/afl-compiler-rt.o.c +++ b/instrumentation/afl-compiler-rt.o.c @@ -2704,7 +2704,7 @@ void __afl_coverage_skip() { // mark this area as especially interesting void __afl_coverage_interesting(u8 val, u32 id) { - __afl_area_ptr[id] = val; + __afl_area_ptr[id % __afl_map_size] = val; } |