about summary refs log tree commit diff
path: root/src/afl-fuzz.c
diff options
context:
space:
mode:
authorvanhauser-thc <vh@thc.org>2021-03-06 23:01:13 +0100
committervanhauser-thc <vh@thc.org>2021-03-06 23:01:13 +0100
commit7f062524c97ab18306d42e59ab0223e04ff78f24 (patch)
treed059498630b86c69faff7e7bf1b2dbe79c2558a5 /src/afl-fuzz.c
parent99b4c3f3624db9300c175936aff22535db6eef67 (diff)
downloadafl++-7f062524c97ab18306d42e59ab0223e04ff78f24.tar.gz
fixes
Diffstat (limited to 'src/afl-fuzz.c')
-rw-r--r--src/afl-fuzz.c50
1 files changed, 27 insertions, 23 deletions
diff --git a/src/afl-fuzz.c b/src/afl-fuzz.c
index afaa8f5f..4ee71120 100644
--- a/src/afl-fuzz.c
+++ b/src/afl-fuzz.c
@@ -986,6 +986,21 @@ int main(int argc, char **argv_orig, char **envp) {
 
   }
 
+  if (unlikely(afl->afl_env.afl_persistent_record)) {
+
+    afl->fsrv.persistent_record = atoi(afl->afl_env.afl_persistent_record);
+    afl->fsrv.persistent_record_dir = alloc_printf("%s/crashes", afl->out_dir);
+
+    if (afl->fsrv.persistent_record < 2) {
+
+      FATAL(
+          "AFL_PERSISTENT_RECORD value must be be at least 2, recommended is "
+          "100 or 1000.");
+
+    }
+
+  }
+
   if (afl->fsrv.qemu_mode && getenv("AFL_USE_QASAN")) {
 
     u8 *preload = getenv("AFL_PRELOAD");
@@ -1239,29 +1254,6 @@ int main(int argc, char **argv_orig, char **envp) {
 
   }
 
-  if (unlikely(afl->afl_env.afl_persistent_record)) {
-
-    afl->fsrv.persistent_record = atoi(afl->afl_env.afl_persistent_record);
-    afl->fsrv.persistent_record_dir = alloc_printf("%s/crashes", afl->out_dir);
-
-    if (afl->fsrv.persistent_record < 2) {
-
-      FATAL(
-          "AFL_PERSISTENT_RECORD vallue must be be at least 2, recommended is "
-          "100 or 1000.");
-
-    }
-
-    if (!getenv(PERSIST_ENV_VAR)) {
-
-      FATAL(
-          "Target binary is not compiled in persistent mode, "
-          "AFL_PERSISTENT_RECORD makes no sense.");
-
-    }
-
-  }
-
   if (afl->afl_env.afl_crash_exitcode) {
 
     long exitcode = strtol(afl->afl_env.afl_crash_exitcode, NULL, 10);
@@ -1531,6 +1523,18 @@ int main(int argc, char **argv_orig, char **envp) {
 
   check_binary(afl, argv[optind]);
 
+  if (unlikely(afl->fsrv.persistent_record)) {
+
+    if (!getenv(PERSIST_ENV_VAR)) {
+
+      FATAL(
+          "Target binary is not compiled in persistent mode, "
+          "AFL_PERSISTENT_RECORD makes no sense.");
+
+    }
+
+  }
+
   if (afl->shmem_testcase_mode) { setup_testcase_shmem(afl); }
 
   afl->start_time = get_cur_time();