about summary refs log tree commit diff
diff options
context:
space:
mode:
authorvanhauser-thc <vh@thc.org>2021-04-13 17:59:11 +0200
committervanhauser-thc <vh@thc.org>2021-04-13 17:59:11 +0200
commit1fabfd5a32ce850912ce623eeabd369b59c70494 (patch)
treeab588e7b3acd8e3af5bf526b8015cbb334f9c909
parentbe880f2476963b8ebebe9d8cc196e4e74104c7a6 (diff)
downloadafl++-1fabfd5a32ce850912ce623eeabd369b59c70494.tar.gz
afl-whatsup -d
-rwxr-xr-xafl-whatsup45
-rw-r--r--docs/Changelog.md1
2 files changed, 35 insertions, 11 deletions
diff --git a/afl-whatsup b/afl-whatsup
index e92b24bd..ee20fc2d 100755
--- a/afl-whatsup
+++ b/afl-whatsup
@@ -21,29 +21,37 @@
 echo "$0 status check tool for afl-fuzz by Michal Zalewski"
 echo
 test "$1" = "-h" -o "$1" = "-hh" && {
-  echo $0 [-s] output_directory
+  echo "$0 [-s] [-d] output_directory"
   echo
   echo Options:
   echo   -s  -  skip details and output summary results only
+  echo   -d  -  include dead fuzzer stats
   echo
   exit 1
 }
 
-if [ "$1" = "-s" ]; then
+unset SUMMARY_ONLY
+unset PROCESS_DEAD
 
-  SUMMARY_ONLY=1
-  DIR="$2"
+while [ "$1" = "-s" -o "$1" = "-d" ]; do
 
-else
+  if [ "$1" = "-s" ]; then
+    SUMMARY_ONLY=1
+  fi
 
-  unset SUMMARY_ONLY
-  DIR="$1"
+  if [ "$1" = "-d" ]; then
+    PROCESS_DEAD=1
+  fi
+  
+  shift
 
-fi
+done
+
+DIR="$1"
 
 if [ "$DIR" = "" ]; then
 
-  echo "Usage: $0 [ -s ] afl_sync_dir" 1>&2
+  echo "Usage: $0 [-s] [-d] afl_sync_dir" 1>&2
   echo 1>&2
   echo "The -s option causes the tool to skip all the per-fuzzer trivia and show" 1>&2
   echo "just the summary results. See docs/parallel_fuzzing.md for additional tips." 1>&2
@@ -160,7 +168,12 @@ for i in `find . -maxdepth 2 -iname fuzzer_stats | sort`; do
     fi
 
     DEAD_CNT=$((DEAD_CNT + 1))
-    continue
+
+    if [ "$PROCESS_DEAD" = "" ]; then
+
+      continue
+
+    fi
 
   fi
 
@@ -257,8 +270,18 @@ echo "============="
 echo
 echo "       Fuzzers alive : $ALIVE_CNT"
 
+if [ "$PROCESS_DEAD" = "" ]; then
+
+  TXT="excluded from stats"
+
+else
+
+  TXT="included in stats"
+
+fi
+
 if [ ! "$DEAD_CNT" = "0" ]; then
-  echo "      Dead or remote : $DEAD_CNT (excluded from stats)"
+  echo "      Dead or remote : $DEAD_CNT ($TXT)"
 fi
 
 echo "      Total run time : $FMT_TIME"
diff --git a/docs/Changelog.md b/docs/Changelog.md
index 14a0bdaf..bd14e293 100644
--- a/docs/Changelog.md
+++ b/docs/Changelog.md
@@ -31,6 +31,7 @@ sending a mail to <afl-users+subscribe@googlegroups.com>.
     - Leak Sanitizer support (AFL_USE_LSAN) added by Joshua Rogers, thanks!
     - Removed InsTrim instrumentation as it is not as good as PCGUARD
     - Removed automatic linking with -lc++ for LTO mode
+  - add -d (dead fuzzer stats) to afl-whatsup
 
 ### Version ++3.12c (release)
   - afl-fuzz: