diff --git a/src/exec_pty.c b/src/exec_pty.c index ba77b014c..001184790 100644 --- a/src/exec_pty.c +++ b/src/exec_pty.c @@ -334,6 +334,9 @@ suspend_parent(int signo) } /* Suspend self and continue child when we resume. */ + zero_bytes(&sa, sizeof(sa)); + sigemptyset(&sa.sa_mask); + sa.sa_flags = SA_INTERRUPT; /* do not restart syscalls */ sa.sa_handler = SIG_DFL; sigaction(signo, &sa, &osa); sudo_debug_printf(SUDO_DEBUG_INFO, "kill parent %d", signo);