about summary refs log tree commit diff
diff options
context:
space:
mode:
authorDaniil Kutz <kutz@ispras.ru>2023-02-07 19:50:07 +0300
committerDaniil Kutz <kutz@ispras.ru>2023-02-07 19:50:31 +0300
commitab26356bf73f2242555e6be72a004082fa22d402 (patch)
treeee840858f80c2a04ae401d8001e7cd43783b35c7
parent03e6d33a4044115c44afeb6c1ae735c0310018af (diff)
downloadafl++-ab26356bf73f2242555e6be72a004082fa22d402.tar.gz
Increase fuzz_level for mopt_common_fuzzing
Change performance score calculation for lin and quad power schedules
-rw-r--r--src/afl-fuzz-one.c1
-rw-r--r--src/afl-fuzz-queue.c6
2 files changed, 7 insertions, 0 deletions
diff --git a/src/afl-fuzz-one.c b/src/afl-fuzz-one.c
index 6367f597..76826945 100644
--- a/src/afl-fuzz-one.c
+++ b/src/afl-fuzz-one.c
@@ -5683,6 +5683,7 @@ pacemaker_fuzzing:
 
   }                                                                /* block */
 
+  ++afl->queue_cur->fuzz_level;
   return ret_val;
 
 }
diff --git a/src/afl-fuzz-queue.c b/src/afl-fuzz-queue.c
index e3faa392..ebfc252c 100644
--- a/src/afl-fuzz-queue.c
+++ b/src/afl-fuzz-queue.c
@@ -1007,10 +1007,16 @@ u32 calculate_score(afl_state_t *afl, struct queue_entry *q) {
       break;
 
     case LIN:
+      // Don't modify perf_score for unfuzzed seeds
+      if (!q->fuzz_level) break;
+
       factor = q->fuzz_level / (afl->n_fuzz[q->n_fuzz_entry] + 1);
       break;
 
     case QUAD:
+      // Don't modify perf_score for unfuzzed seeds
+      if (!q->fuzz_level) break;
+
       factor =
           q->fuzz_level * q->fuzz_level / (afl->n_fuzz[q->n_fuzz_entry] + 1);
       break;