diff options
author | vanhauser-thc <vh@thc.org> | 2022-02-05 07:25:12 +0100 |
---|---|---|
committer | vanhauser-thc <vh@thc.org> | 2022-02-05 07:25:12 +0100 |
commit | 04d693721bbfe181a8d1c6361d46baa74388e6f2 (patch) | |
tree | 1a391419a3aea0013c9080904443c79fce7cb371 | |
parent | 9eb66cccf4443e1ee7bcfe8f4e81c9836b39d834 (diff) | |
download | afl++-04d693721bbfe181a8d1c6361d46baa74388e6f2.tar.gz |
force persistent and deferred also for tools
-rw-r--r-- | src/afl-common.c | 6 | ||||
-rw-r--r-- | src/afl-fuzz-init.c | 1 | ||||
-rw-r--r-- | src/afl-fuzz.c | 2 |
3 files changed, 6 insertions, 3 deletions
diff --git a/src/afl-common.c b/src/afl-common.c index 7ba3bb74..e684302a 100644 --- a/src/afl-common.c +++ b/src/afl-common.c @@ -63,7 +63,8 @@ u32 check_binary_signatures(u8 *fn) { if (f_data == MAP_FAILED) { PFATAL("Unable to mmap file '%s'", fn); } close(fd); - if (memmem(f_data, f_len, PERSIST_SIG, strlen(PERSIST_SIG) + 1)) { + if (memmem(f_data, f_len, PERSIST_SIG, strlen(PERSIST_SIG) + 1) || + getenv(PERSIST_ENV_VAR)) { if (!be_quiet) { OKF(cPIN "Persistent mode binary detected."); } setenv(PERSIST_ENV_VAR, "1", 1); @@ -90,7 +91,8 @@ u32 check_binary_signatures(u8 *fn) { } - if (memmem(f_data, f_len, DEFER_SIG, strlen(DEFER_SIG) + 1)) { + if (memmem(f_data, f_len, DEFER_SIG, strlen(DEFER_SIG) + 1) || + getenv(DEFER_ENV_VAR)) { if (!be_quiet) { OKF(cPIN "Deferred forkserver binary detected."); } setenv(DEFER_ENV_VAR, "1", 1); diff --git a/src/afl-fuzz-init.c b/src/afl-fuzz-init.c index 9e74079b..eb73b120 100644 --- a/src/afl-fuzz-init.c +++ b/src/afl-fuzz-init.c @@ -2830,6 +2830,7 @@ void check_binary(afl_state_t *afl, u8 *fname) { OKF("FRIDA Persistent mode configuration options detected."); setenv(PERSIST_ENV_VAR, "1", 1); afl->persistent_mode = 1; + afl->fsrv.persistent_mode = 1; afl->shmem_testcase_mode = 1; } diff --git a/src/afl-fuzz.c b/src/afl-fuzz.c index d8610df9..7a74fc7e 100644 --- a/src/afl-fuzz.c +++ b/src/afl-fuzz.c @@ -1912,7 +1912,7 @@ int main(int argc, char **argv_orig, char **envp) { WARNF( "Deferred forkserver mode environment variable detected, forcing " - "defered forkserver!"); + "deferred forkserver!"); afl->deferred_mode = 1; } |