diff options
| author | hexcoder- <heiko@hexco.de> | 2020-08-07 19:53:32 +0200 |
|---|---|---|
| committer | hexcoder- <heiko@hexco.de> | 2020-08-07 19:53:32 +0200 |
| commit | 8551d8e48e18a5a50955945b5f73aff3cb492de5 (patch) | |
| tree | 4e62bae271be851bd2e556d51e09197163814190 /src/afl-forkserver.c | |
| parent | 32558bc8072caa14ee670c6be40af4d183e8ffcc (diff) | |
| parent | 934cdc32f4c828d6a8045e4096344601fe528a76 (diff) | |
| download | afl++-8551d8e48e18a5a50955945b5f73aff3cb492de5.tar.gz | |
Merge branch 'dev' of https://github.com/AFLplusplus/AFLplusplus into dev
Diffstat (limited to 'src/afl-forkserver.c')
| -rw-r--r-- | src/afl-forkserver.c | 10 |
1 files changed, 9 insertions, 1 deletions
diff --git a/src/afl-forkserver.c b/src/afl-forkserver.c index 47493eba..752641d7 100644 --- a/src/afl-forkserver.c +++ b/src/afl-forkserver.c @@ -145,6 +145,13 @@ 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 +698,8 @@ 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]); |
