diff options
Diffstat (limited to 'src')
-rw-r--r-- | src/afl-fuzz-init.c | 4 | ||||
-rw-r--r-- | src/afl-fuzz-run.c | 11 |
2 files changed, 12 insertions, 3 deletions
diff --git a/src/afl-fuzz-init.c b/src/afl-fuzz-init.c index aa413e2e..de16f901 100644 --- a/src/afl-fuzz-init.c +++ b/src/afl-fuzz-init.c @@ -738,10 +738,10 @@ void find_timeout(void) { (void)i; /* Ignore errors */ close(fd); - off = strstr(tmp, "exec_timeout : "); + off = strstr(tmp, "exec_timeout : "); if (!off) return; - ret = atoi(off + 17); + ret = atoi(off + 20); if (ret <= 4) return; exec_tmout = ret; diff --git a/src/afl-fuzz-run.c b/src/afl-fuzz-run.c index 220433fc..c0fa928e 100644 --- a/src/afl-fuzz-run.c +++ b/src/afl-fuzz-run.c @@ -178,7 +178,16 @@ u8 run_target(char** argv, u32 timeout) { if ((res = read(fsrv_st_fd, &status, 4)) != 4) { if (stop_soon) return 0; - RPFATAL(res, "Unable to communicate with fork server (OOM?)"); + SAYF("\n" cLRD "[-] " cRST + "Unable to communicate with fork server. Some possible reasons:\n\n" + " - You've run out of memory. Use -m to increase the the memory limit\n" + " to something higher than %lld.\n" + " - The binary or one of the libraries it uses manages to create\n" + " threads before the forkserver initializes.\n" + " - The binary, at least in some circumstances, exits in a way that\n" + " also kills the parent process - raise() could be the culprit.\n\n" + "If all else fails you can disable the fork server via AFL_NO_FORKSRV=1.\n", mem_limit); + RPFATAL(res, "Unable to communicate with fork server"); } |