about summary refs log tree commit diff
path: root/utils
diff options
context:
space:
mode:
Diffstat (limited to 'utils')
-rw-r--r--utils/aflpp_driver/README.md12
-rw-r--r--utils/aflpp_driver/aflpp_qemu_driver.c2
-rw-r--r--utils/libtokencap/libtokencap.so.c10
-rwxr-xr-xutils/optimin/build_optimin.sh2
-rw-r--r--utils/optimin/src/CMakeLists.txt1
-rw-r--r--utils/socket_fuzzing/README.md2
6 files changed, 19 insertions, 10 deletions
diff --git a/utils/aflpp_driver/README.md b/utils/aflpp_driver/README.md
index 30e2412f..4560be2b 100644
--- a/utils/aflpp_driver/README.md
+++ b/utils/aflpp_driver/README.md
@@ -7,15 +7,15 @@ targets.
 
 Just do `afl-clang-fast++ -o fuzz fuzzer_harness.cc libAFLDriver.a [plus required linking]`.
 
-You can also sneakily do this little trick: 
+You can also sneakily do this little trick:
 If this is the clang compile command to build for libfuzzer:
   `clang++ -o fuzz -fsanitize=fuzzer fuzzer_harness.cc -lfoo`
 then just switch `clang++` with `afl-clang-fast++` and our compiler will
 magically insert libAFLDriver.a :)
 
-To use shared-memory testcases, you need nothing to do.
-To use stdin testcases give `-` as the only command line parameter.
-To use file input testcases give `@@` as the only command line parameter.
+To use shared-memory test cases, you need nothing to do.
+To use stdin test cases, give `-` as the only command line parameter.
+To use file input test cases, give `@@` as the only command line parameter.
 
 IMPORTANT: if you use `afl-cmin` or `afl-cmin.bash` then either pass `-`
 or `@@` as command line parameters.
@@ -30,8 +30,8 @@ are to be fuzzed in qemu_mode. So we compile them with clang/clang++, without
 
 `clang++ -o fuzz fuzzer_harness.cc libAFLQemuDriver.a [plus required linking]`.
 
-
 Then just do (where the name of the binary is `fuzz`):
+
 ```
 AFL_QEMU_PERSISTENT_ADDR=0x$(nm fuzz | grep "T LLVMFuzzerTestOneInput" | awk '{print $1}')
 AFL_QEMU_PERSISTENT_HOOK=/path/to/aflpp_qemu_driver_hook.so afl-fuzz -Q ... -- ./fuzz`
@@ -40,4 +40,4 @@ AFL_QEMU_PERSISTENT_HOOK=/path/to/aflpp_qemu_driver_hook.so afl-fuzz -Q ... -- .
 if you use afl-cmin or `afl-showmap -C` with the aflpp_qemu_driver you need to
 set the set same AFL_QEMU_... (or AFL_FRIDA_...) environment variables.
 If you want to use afl-showmap (without -C) or afl-cmin.bash then you may not
-set these environment variables and rather set `AFL_QEMU_DRIVER_NO_HOOK=1`.
+set these environment variables and rather set `AFL_QEMU_DRIVER_NO_HOOK=1`.
\ No newline at end of file
diff --git a/utils/aflpp_driver/aflpp_qemu_driver.c b/utils/aflpp_driver/aflpp_qemu_driver.c
index 99a4c9a8..e47df1e6 100644
--- a/utils/aflpp_driver/aflpp_qemu_driver.c
+++ b/utils/aflpp_driver/aflpp_qemu_driver.c
@@ -22,7 +22,7 @@ int main(int argc, char **argv) {
   if (LLVMFuzzerInitialize) LLVMFuzzerInitialize(&argc, &argv);
   // Do any other expensive one-time initialization here.
 
-  if (getenv("AFL_QEMU_DRIVER_NO_HOOK")) {
+  if (getenv("AFL_QEMU_DRIVER_NO_HOOK") || getenv("AFL_FRIDA_DRIVER_NO_HOOK")) {
 
     afl_qemu_driver_stdin_input();
 
diff --git a/utils/libtokencap/libtokencap.so.c b/utils/libtokencap/libtokencap.so.c
index 3629e804..2b1e3903 100644
--- a/utils/libtokencap/libtokencap.so.c
+++ b/utils/libtokencap/libtokencap.so.c
@@ -33,6 +33,8 @@
 #include "../types.h"
 #include "../config.h"
 
+#include "debug.h"
+
 #if !defined __linux__ && !defined __APPLE__ && !defined __FreeBSD__ &&      \
     !defined __OpenBSD__ && !defined __NetBSD__ && !defined __DragonFly__ && \
     !defined(__HAIKU__) && !defined(__sun)
@@ -169,7 +171,7 @@ static void __tokencap_load_mappings(void) {
   int mib[] = {CTL_VM, VM_PROC, VM_PROC_MAP, __tokencap_pid,
                sizeof(struct kinfo_vmentry)};
   #endif
-  char * buf, *low, *high;
+  char *buf, *low, *high;
   size_t miblen = sizeof(mib) / sizeof(mib[0]);
   size_t len;
 
@@ -343,6 +345,12 @@ static void __tokencap_dump(const u8 *ptr, size_t len, u8 is_text) {
   wrt_ok &= (pos == write(__tokencap_out_file, buf, pos));
   wrt_ok &= (2 == write(__tokencap_out_file, "\"\n", 2));
 
+  if (!wrt_ok) {
+
+    DEBUGF("%s", "writing to the token file failed\n");
+
+  }
+
 }
 
 /* Replacements for strcmp(), memcmp(), and so on. Note that these will be used
diff --git a/utils/optimin/build_optimin.sh b/utils/optimin/build_optimin.sh
index 9480f966..51d1bd26 100755
--- a/utils/optimin/build_optimin.sh
+++ b/utils/optimin/build_optimin.sh
@@ -102,7 +102,7 @@ else
     CNT=1
     while [ '!' -d EvalMaxSAT -a "$CNT" -lt 4 ]; do
       echo "Trying to clone EvalMaxSAT (attempt $CNT/3)"
-      git clone "$GRAMMAR_REPO"
+      git clone "$EVALMAXSAT_REPO"
       CNT=`expr "$CNT" + 1`
     done
   }
diff --git a/utils/optimin/src/CMakeLists.txt b/utils/optimin/src/CMakeLists.txt
index f31ceeaf..693f63f2 100644
--- a/utils/optimin/src/CMakeLists.txt
+++ b/utils/optimin/src/CMakeLists.txt
@@ -1,4 +1,5 @@
 add_executable(optimin OptiMin.cpp)
+set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -fno-rtti")
 
 foreach(LIB MaLib EvalMaxSAT glucose)
     target_include_directories(optimin PRIVATE
diff --git a/utils/socket_fuzzing/README.md b/utils/socket_fuzzing/README.md
index 84398a71..2805fa22 100644
--- a/utils/socket_fuzzing/README.md
+++ b/utils/socket_fuzzing/README.md
@@ -6,6 +6,6 @@ for sending input to stdin which the target binary will think is coming from
 a network socket.
 
 This is desock_dup.c from the amazing preeny project
-https://github.com/zardus/preeny
+[https://github.com/zardus/preeny](https://github.com/zardus/preeny)
 
 It is packaged in AFL++ to have it at hand if needed