aboutsummaryrefslogtreecommitdiff
path: root/include
diff options
context:
space:
mode:
authorvan Hauser <vh@thc.org>2020-08-09 00:35:12 +0200
committervan Hauser <vh@thc.org>2020-08-09 00:35:12 +0200
commite4a0237cbc745552a5b21a2450d7ab55ee98759d (patch)
tree4a744f0705ab405dd86017b791a510f1dde22a1e /include
parentd8f5502d83ec530bcc1ad15b2d23b2660cd6ce58 (diff)
downloadafl++-e4a0237cbc745552a5b21a2450d7ab55ee98759d.tar.gz
step 1
Diffstat (limited to 'include')
-rw-r--r--include/afl-fuzz.h6
-rw-r--r--include/forkserver.h2
2 files changed, 8 insertions, 0 deletions
diff --git a/include/afl-fuzz.h b/include/afl-fuzz.h
index bb1bb314..eb7f8ca5 100644
--- a/include/afl-fuzz.h
+++ b/include/afl-fuzz.h
@@ -371,6 +371,8 @@ typedef struct afl_state {
afl_env_vars_t afl_env;
char **argv; /* argv if needed */
+
+ char **argv_taint; /* argv for taint mode */
/* MOpt:
Lots of globals, but mostly for the status UI and other things where it
@@ -581,6 +583,9 @@ typedef struct afl_state {
char * cmplog_binary;
afl_forkserver_t cmplog_fsrv; /* cmplog has its own little forkserver */
+ /* Taint mode */
+ afl_forkserver_t taint_fsrv; /* taint mode has its own little forkserver */
+
/* Custom mutators */
struct custom_mutator *mutator;
@@ -889,6 +894,7 @@ u32 calculate_score(afl_state_t *, struct queue_entry *);
void write_bitmap(afl_state_t *);
u32 count_bits(afl_state_t *, u8 *);
+u32 count_bits_len(afl_state_t *, u8 *, u32);
u32 count_bytes(afl_state_t *, u8 *);
u32 count_non_255_bytes(afl_state_t *, u8 *);
#ifdef WORD_SIZE_64
diff --git a/include/forkserver.h b/include/forkserver.h
index 717493db..a5fca30e 100644
--- a/include/forkserver.h
+++ b/include/forkserver.h
@@ -79,6 +79,8 @@ typedef struct afl_forkserver {
u8 use_fauxsrv; /* Fauxsrv for non-forking targets? */
u8 qemu_mode; /* if running in qemu mode or not */
+
+ u8 taint_mode; /* if running taint analysis or not */
u32 *shmem_fuzz_len; /* length of the fuzzing test case */