about summary refs log tree commit diff
path: root/src/afl-forkserver.c
diff options
context:
space:
mode:
authorDominik Maier <domenukk@gmail.com>2020-08-07 16:55:58 +0200
committerDominik Maier <domenukk@gmail.com>2020-08-07 16:55:58 +0200
commit22d3a5e90abd58c6a4bb68bf1b3f7ece8283f5bb (patch)
treee6bd88b59d83a426696dbb2850dee762d0a6f164 /src/afl-forkserver.c
parent4a6d66d8c5dcbec8b5014ff0445d9292b3958e1d (diff)
downloadafl++-22d3a5e90abd58c6a4bb68bf1b3f7ece8283f5bb.tar.gz
enabled Wextra, fixed bugs
Diffstat (limited to 'src/afl-forkserver.c')
-rw-r--r--src/afl-forkserver.c6
1 files changed, 5 insertions, 1 deletions
diff --git a/src/afl-forkserver.c b/src/afl-forkserver.c
index 47493eba..15935ab0 100644
--- a/src/afl-forkserver.c
+++ b/src/afl-forkserver.c
@@ -145,6 +145,10 @@ restart_select:
   if (likely(sret > 0)) {
 
   restart_read:
+    if (*stop_soon_p) {
+      // Early return - the user wants to quit.
+      return 0;
+    }
     len_read = read(fd, (u8 *)buf, 4);
 
     if (likely(len_read == 4)) {  // for speed we put this first
@@ -691,7 +695,7 @@ void afl_fsrv_start(afl_forkserver_t *fsrv, char **argv,
         }
 
         offset = 0;
-        while (offset < status && (u8)dict[offset] + offset < status) {
+        while (offset < (u32)status && (u8)dict[offset] + offset < (u32)status) {
 
           fsrv->function_ptr(fsrv->function_opt, dict + offset + 1,
                              (u8)dict[offset]);