about summary refs log tree commit diff
path: root/src
diff options
context:
space:
mode:
Diffstat (limited to 'src')
-rw-r--r--src/afl-common.c1
-rw-r--r--src/afl-fuzz-run.c3
-rw-r--r--src/afl-fuzz.c2
-rw-r--r--src/afl-showmap.c8
4 files changed, 10 insertions, 4 deletions
diff --git a/src/afl-common.c b/src/afl-common.c
index 46d7de26..20fc424a 100644
--- a/src/afl-common.c
+++ b/src/afl-common.c
@@ -156,6 +156,7 @@ char** get_qemu_argv(u8* own_loc, char** argv, int argc) {
 
   if (!access(BIN_PATH "/afl-qemu-trace", X_OK)) {
 
+    ck_free(cp);
     target_path = new_argv[0] = ck_strdup(BIN_PATH "/afl-qemu-trace");
     return new_argv;
 
diff --git a/src/afl-fuzz-run.c b/src/afl-fuzz-run.c
index 56c52c9b..58985d8b 100644
--- a/src/afl-fuzz-run.c
+++ b/src/afl-fuzz-run.c
@@ -643,7 +643,7 @@ void sync_fuzzers(char** argv) {
 
         fault = run_target(argv, exec_tmout);
 
-        if (stop_soon) return;
+        if (stop_soon) goto close_sync;
 
         syncing_party = sd_ent->d_name;
         queued_imported += save_if_interesting(argv, mem, st.st_size, fault);
@@ -662,6 +662,7 @@ void sync_fuzzers(char** argv) {
 
     ck_write(id_fd, &next_min_accept, sizeof(u32), qd_synced_path);
 
+close_sync:
     close(id_fd);
     closedir(qd);
     ck_free(qd_path);
diff --git a/src/afl-fuzz.c b/src/afl-fuzz.c
index 2d5a5743..12c7853c 100644
--- a/src/afl-fuzz.c
+++ b/src/afl-fuzz.c
@@ -119,7 +119,7 @@ static void usage(u8* argv0, int more_help) {
       "                  if using QEMU, just use -c 0.\n\n"
 
       "Fuzzing behavior settings:\n"
-      "  -N            - do not unlink the fuzzing input file\n"
+      "  -N            - do not unlink the fuzzing input file (only for devices etc.!)\n"
       "  -d            - quick & dirty mode (skips deterministic steps)\n"
       "  -n            - fuzz without instrumentation (dumb mode)\n"
       "  -x dir        - optional fuzzer dictionary (see README.md, its really "
diff --git a/src/afl-showmap.c b/src/afl-showmap.c
index 4c1168a6..6075027f 100644
--- a/src/afl-showmap.c
+++ b/src/afl-showmap.c
@@ -173,8 +173,8 @@ static u32 write_results_to_file(u8* out_file) {
   s32 fd;
   u32 i, ret = 0;
 
-  u8 cco = !!get_afl_env("AFL_CMIN_CRASHES_ONLY"),
-     caa = !!get_afl_env("AFL_CMIN_ALLOW_ANY");
+  u8 cco = !!getenv("AFL_CMIN_CRASHES_ONLY"),
+     caa = !!getenv("AFL_CMIN_ALLOW_ANY");
 
   if (!strncmp(out_file, "/dev/", 5)) {
 
@@ -654,6 +654,7 @@ static void usage(u8* argv0) {
       "Environment variables used:\n"
       "AFL_PRELOAD: LD_PRELOAD / DYLD_INSERT_LIBRARIES settings for target\n"
       "AFL_DEBUG: enable extra developer output\n"
+      "AFL_QUIET: do not print extra informational output"
       "AFL_CMIN_CRASHES_ONLY: (cmin_mode) only write tuples for crashing "
       "inputs\n"
       "AFL_CMIN_ALLOW_ANY: (cmin_mode) write tuples for crashing inputs also\n"
@@ -729,6 +730,9 @@ int main(int argc, char** argv, char** envp) {
   char** use_argv;
 
   doc_path = access(DOC_PATH, F_OK) ? "docs" : DOC_PATH;
+  
+  if (getenv("AFL_QUIET") != NULL)
+    be_quiet = 1;
 
   while ((opt = getopt(argc, argv, "+i:o:f:m:t:A:eqZQUWbcrh")) > 0)