about summary refs log tree commit diff
path: root/src/afl-fuzz-init.c
diff options
context:
space:
mode:
authorMarcel Boehme <marcel.boehme@acm.org>2020-09-29 11:53:27 +0000
committerMarcel Boehme <marcel.boehme@acm.org>2020-09-29 11:53:27 +0000
commite87eca7fe8ec3ed0ba79e7722350ad502b67218b (patch)
treeabe699ce381526ad0c0106628852593dc9eeebfe /src/afl-fuzz-init.c
parente69b25e34be8028921389bbb114135c3028d0a3d (diff)
downloadafl++-e87eca7fe8ec3ed0ba79e7722350ad502b67218b.tar.gz
Patching and improving AFLFast schedules.
Diffstat (limited to 'src/afl-fuzz-init.c')
-rw-r--r--src/afl-fuzz-init.c8
1 files changed, 8 insertions, 0 deletions
diff --git a/src/afl-fuzz-init.c b/src/afl-fuzz-init.c
index cbac3822..b825837f 100644
--- a/src/afl-fuzz-init.c
+++ b/src/afl-fuzz-init.c
@@ -729,6 +729,14 @@ void read_testcases(afl_state_t *afl, u8 *directory) {
     add_to_queue(afl, fn2, st.st_size >= MAX_FILE ? MAX_FILE : st.st_size,
                  passed_det);
 
+    if (unlikely(afl->schedule >= FAST && afl->schedule <= RARE)) {
+
+      u64 cksum = hash64(afl->fsrv.trace_bits, afl->fsrv.map_size, HASH_CONST);
+
+      afl->n_fuzz[cksum % n_fuzz_size] = 1;
+
+    }
+
   }
 
   free(nl);                                                  /* not tracked */