about summary refs log tree commit diff
path: root/include
diff options
context:
space:
mode:
Diffstat (limited to 'include')
-rw-r--r--include/afl-fuzz.h3
-rw-r--r--include/config.h5
-rw-r--r--include/forkserver.h16
3 files changed, 14 insertions, 10 deletions
diff --git a/include/afl-fuzz.h b/include/afl-fuzz.h
index 691ba148..046b0177 100644
--- a/include/afl-fuzz.h
+++ b/include/afl-fuzz.h
@@ -390,7 +390,8 @@ typedef struct afl_env_vars {
       *afl_hang_tmout, *afl_forksrv_init_tmout, *afl_skip_crashes, *afl_preload,
       *afl_max_det_extras, *afl_statsd_host, *afl_statsd_port,
       *afl_crash_exitcode, *afl_statsd_tags_flavor, *afl_testcache_size,
-      *afl_testcache_entries, *afl_kill_signal, *afl_target_env, *afl_persistent_record;
+      *afl_testcache_entries, *afl_kill_signal, *afl_target_env,
+      *afl_persistent_record;
 
 } afl_env_vars_t;
 
diff --git a/include/config.h b/include/config.h
index 4691624a..75f363f7 100644
--- a/include/config.h
+++ b/include/config.h
@@ -77,8 +77,9 @@
 
 /* If a persistent target keeps state and found crashes are not reproducable
    then enable this option and set the AFL_PERSISTENT_RECORD env variable
-   to a number. These number of testcases prior the crash will be kept and
-   also written to the crash/ directory */
+   to a number. These number of testcases prior and including the crash case
+   will be kept and written to the crash/ directory as RECORD:... files.
+   Note that every crash will be written, not only unique ones! */
 
 //#define AFL_PERSISTENT_RECORD
 
diff --git a/include/forkserver.h b/include/forkserver.h
index c894ad80..808f6bd2 100644
--- a/include/forkserver.h
+++ b/include/forkserver.h
@@ -95,13 +95,15 @@ typedef struct afl_forkserver {
   char *cmplog_binary;                  /* the name of the cmplog binary    */
 
   /* persistent mode replay functionality */
-  u32   persistent_record;              /* persistent replay setting        */
-  u32   persistent_record_idx;          /* persistent replay cache ptr      */
-  u32   persistent_record_cnt;          /* persistent replay counter        */
-  u8 *  persistent_record_dir;
-  u8 ** persistent_record_data;
-  u32 * persistent_record_len;
-  s32   persistent_record_pid;
+  u32 persistent_record;                /* persistent replay setting        */
+#ifdef AFL_PERSISTENT_RECORD
+  u32  persistent_record_idx;           /* persistent replay cache ptr      */
+  u32  persistent_record_cnt;           /* persistent replay counter        */
+  u8 * persistent_record_dir;
+  u8 **persistent_record_data;
+  u32 *persistent_record_len;
+  s32  persistent_record_pid;
+#endif
 
   /* Function to kick off the forkserver child */
   void (*init_child_func)(struct afl_forkserver *fsrv, char **argv);