--- a/rlogind/rlogind.c +++ b/rlogind/rlogind.c @@ -440,7 +440,7 @@ ioctl(master, TIOCPKT, &on); signal(SIGCHLD, cleanup); protocol(netfd, master); - signal(SIGCHLD, SIG_IGN); + signal(SIGCHLD, SIG_DFL); cleanup(0); } --- a/rlogin/rlogin.c +++ b/rlogin/rlogin.c @@ -523,7 +523,7 @@ stop(char cmdc) { mode(0); - signal(SIGCHLD, SIG_IGN); + signal(SIGCHLD, SIG_DFL); kill(cmdc == defsusp ? 0 : getpid(), SIGTSTP); signal(SIGCHLD, catch_child); mode(1);