about summary refs log tree commit diff
path: root/utils/persistent_mode/persistent_demo_new.c
diff options
context:
space:
mode:
authorvan Hauser <vh@thc.org>2020-12-09 11:07:14 +0100
committervan Hauser <vh@thc.org>2020-12-09 11:07:14 +0100
commit39a4fac941177387578ec856aacea2187588fc13 (patch)
treecef83df4ebfb797eb9f49066c0007a92baa4b035 /utils/persistent_mode/persistent_demo_new.c
parent2641082a76ca33e22f0edcededa006f437b646ea (diff)
downloadafl++-39a4fac941177387578ec856aacea2187588fc13.tar.gz
better examples
Diffstat (limited to 'utils/persistent_mode/persistent_demo_new.c')
-rw-r--r--utils/persistent_mode/persistent_demo_new.c8
1 files changed, 7 insertions, 1 deletions
diff --git a/utils/persistent_mode/persistent_demo_new.c b/utils/persistent_mode/persistent_demo_new.c
index 0d24a51e..7e694696 100644
--- a/utils/persistent_mode/persistent_demo_new.c
+++ b/utils/persistent_mode/persistent_demo_new.c
@@ -27,6 +27,7 @@
 #include <unistd.h>
 #include <signal.h>
 #include <string.h>
+#include <limits.h>
 
 /* this lets the source compile without afl-clang-fast/lto */
 #ifndef __AFL_FUZZ_TESTCASE_LEN
@@ -47,6 +48,11 @@ __AFL_FUZZ_INIT();
 
 /* Main entry point. */
 
+/* To ensure checks are not optimized out it is recommended to disable
+   code optimization for the fuzzer harness main() */
+#pragma clang optimize off
+#pragma GCC            optimize("O0")
+
 int main(int argc, char **argv) {
 
   ssize_t        len;                        /* how much input did we read? */
@@ -60,7 +66,7 @@ int main(int argc, char **argv) {
   __AFL_INIT();
   buf = __AFL_FUZZ_TESTCASE_BUF;  // this must be assigned before __AFL_LOOP!
 
-  while (__AFL_LOOP(1000)) {  // increase if you have good stability
+  while (__AFL_LOOP(UINT_MAX)) {  // increase if you have good stability
 
     len = __AFL_FUZZ_TESTCASE_LEN;  // do not use the macro directly in a call!