diff options
Diffstat (limited to 'src/afl-forkserver.c')
-rw-r--r-- | src/afl-forkserver.c | 5 |
1 files changed, 3 insertions, 2 deletions
diff --git a/src/afl-forkserver.c b/src/afl-forkserver.c index b3b86685..56c3c9d5 100644 --- a/src/afl-forkserver.c +++ b/src/afl-forkserver.c @@ -160,7 +160,8 @@ static void afl_fauxsrv_execv(afl_forkserver_t *fsrv, char **argv) { cloning a stopped child. So, we just execute once, and then send commands through a pipe. The other part of this logic is in afl-as.h / llvm_mode */ -void afl_fsrv_start(afl_forkserver_t *fsrv, char **argv) { +void afl_fsrv_start(afl_forkserver_t *fsrv, char **argv, + volatile u8 *stop_soon_p) { int st_pipe[2], ctl_pipe[2]; int status; @@ -317,7 +318,7 @@ void afl_fsrv_start(afl_forkserver_t *fsrv, char **argv) { rlen = 4; u32 time = read_timed(fsrv->fsrv_st_fd, &status, rlen, - fsrv->exec_tmout * FORK_WAIT_MULT); + fsrv->exec_tmout * FORK_WAIT_MULT, stop_soon_p); if (time > fsrv->exec_tmout * FORK_WAIT_MULT) { |