mirror of
https://github.com/AFLplusplus/AFLplusplus.git
synced 2025-06-17 20:28:08 +00:00
add some sanity checks and remove duplicate nyx_shutdown calls
This commit is contained in:
@ -555,14 +555,12 @@ void afl_fsrv_start(afl_forkserver_t *fsrv, char **argv,
|
|||||||
switch (fsrv->nyx_handlers->nyx_exec(fsrv->nyx_runner)) {
|
switch (fsrv->nyx_handlers->nyx_exec(fsrv->nyx_runner)) {
|
||||||
|
|
||||||
case Abort:
|
case Abort:
|
||||||
fsrv->nyx_handlers->nyx_shutdown(fsrv->nyx_runner);
|
|
||||||
FATAL("Error: Nyx abort occured...");
|
FATAL("Error: Nyx abort occured...");
|
||||||
break;
|
break;
|
||||||
case IoError:
|
case IoError:
|
||||||
FATAL("Error: QEMU-Nyx has died...");
|
FATAL("Error: QEMU-Nyx has died...");
|
||||||
break;
|
break;
|
||||||
case Error:
|
case Error:
|
||||||
fsrv->nyx_handlers->nyx_shutdown(fsrv->nyx_runner);
|
|
||||||
FATAL("Error: Nyx runtime error has occured...");
|
FATAL("Error: Nyx runtime error has occured...");
|
||||||
break;
|
break;
|
||||||
default:
|
default:
|
||||||
@ -1293,8 +1291,14 @@ void afl_fsrv_kill(afl_forkserver_t *fsrv) {
|
|||||||
#ifdef __linux__
|
#ifdef __linux__
|
||||||
if (fsrv->nyx_mode) {
|
if (fsrv->nyx_mode) {
|
||||||
|
|
||||||
free(fsrv->nyx_aux_string);
|
if (fsrv->nyx_aux_string){
|
||||||
fsrv->nyx_handlers->nyx_shutdown(fsrv->nyx_runner);
|
free(fsrv->nyx_aux_string);
|
||||||
|
}
|
||||||
|
|
||||||
|
/* check if we actually got a valid nyx runner */
|
||||||
|
if (fsrv->nyx_runner) {
|
||||||
|
fsrv->nyx_handlers->nyx_shutdown(fsrv->nyx_runner);
|
||||||
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -1474,7 +1478,6 @@ afl_fsrv_run_target(afl_forkserver_t *fsrv, u32 timeout,
|
|||||||
FATAL("FixMe: Nyx InvalidWriteToPayload handler is missing");
|
FATAL("FixMe: Nyx InvalidWriteToPayload handler is missing");
|
||||||
break;
|
break;
|
||||||
case Abort:
|
case Abort:
|
||||||
fsrv->nyx_handlers->nyx_shutdown(fsrv->nyx_runner);
|
|
||||||
FATAL("Error: Nyx abort occured...");
|
FATAL("Error: Nyx abort occured...");
|
||||||
case IoError:
|
case IoError:
|
||||||
if (*stop_soon_p) {
|
if (*stop_soon_p) {
|
||||||
|
Reference in New Issue
Block a user