about summary refs log tree commit diff
diff options
context:
space:
mode:
-rw-r--r--dynamic_list.txt1
-rw-r--r--frida_mode/include/instrument.h2
-rw-r--r--frida_mode/src/instrument/instrument.c2
-rw-r--r--instrumentation/afl-compiler-rt.o.c2
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;
 
 }