fork server: restore SIGCHLD handler for child process

This commit is contained in:
Kuang-che Wu
2021-11-19 12:09:35 +08:00
parent 7c3d4e54eb
commit 0c26e43486

View File

@ -670,8 +670,7 @@ static void __afl_start_snapshots(void) {
u8 child_stopped = 0;
signal(SIGCHLD, SIG_DFL);
void (*old_sigchld_handler)(int) = 0;
void (*old_sigchld_handler)(int) = signal(SIGCHLD, SIG_DFL);
/* Phone home and tell the parent that we're OK. If parent isn't there,
assume we're not running in forkserver mode and just execute program. */
@ -927,8 +926,7 @@ static void __afl_start_forkserver(void) {
u8 child_stopped = 0;
signal(SIGCHLD, SIG_DFL);
void (*old_sigchld_handler)(int) = 0;
void (*old_sigchld_handler)(int) = signal(SIGCHLD, SIG_DFL);
if (__afl_map_size <= FS_OPT_MAX_MAPSIZE) {