diff options
-rw-r--r-- | docs/ChangeLog | 2 | ||||
-rw-r--r-- | docs/env_variables.txt | 4 | ||||
-rw-r--r-- | src/afl-as.c | 5 |
3 files changed, 10 insertions, 1 deletions
diff --git a/docs/ChangeLog b/docs/ChangeLog index 92fd08ec..cad99c9f 100644 --- a/docs/ChangeLog +++ b/docs/ChangeLog @@ -20,6 +20,8 @@ Version ++2.59d (develop): - added ./experimental/argv_fuzzing ld_preload library by Kjell Braden - added preeny's desock_dup ld_preload library as ./experimental/socket_fuzzing for network fuzzing + - added AFL_AS_FORCE_INSTRUMENT environment variable for afl-as - this is + for retrorewrite project - we now set QEMU_SET_ENV from AFL_PRELOAD when qemu_mode is used diff --git a/docs/env_variables.txt b/docs/env_variables.txt index 427f8cca..a6162767 100644 --- a/docs/env_variables.txt +++ b/docs/env_variables.txt @@ -65,6 +65,10 @@ tools make fairly broad use of environmental variables: mkdir assembly_here TMPDIR=$PWD/assembly_here AFL_KEEP_ASSEMBLY=1 make clean all + - If you are a weird person that wants to compile and instrument asm + text files then use the AFL_AS_FORCE_INSTRUMENT variable: + AFL_AS_FORCE_INSTRUMENT=1 afl-gcc foo.s -o foo + - Setting AFL_QUIET will prevent afl-cc and afl-as banners from being displayed during compilation, in case you find them distracting. diff --git a/src/afl-as.c b/src/afl-as.c index 9abe3fc2..8f24c16f 100644 --- a/src/afl-as.c +++ b/src/afl-as.c @@ -208,8 +208,11 @@ static void edit_params(int argc, char** argv) { NSS. */ if (strncmp(input_file, tmp_dir, strlen(tmp_dir)) && - strncmp(input_file, "/var/tmp/", 9) && strncmp(input_file, "/tmp/", 5)) + strncmp(input_file, "/var/tmp/", 9) && strncmp(input_file, "/tmp/", 5) + && getenv("AFL_AS_FORCE_INSTRUMENT") == NULL) pass_thru = 1; + else if (getenv("AFL_AS_FORCE_INSTRUMENT")) + unsetenv("AFL_AS_FORCE_INSTRUMENT"); } |