On Sun, 11 Oct 2015, Philip Guenther wrote: > Oooh, I like that combo. How's this this look then, overall?
...and a followup diff for sigaction(2) and signal(3)... Index: gen/signal.3 =================================================================== RCS file: /cvs/src/lib/libc/gen/signal.3,v retrieving revision 1.53 diff -u -p -r1.53 signal.3 --- gen/signal.3 12 May 2015 02:44:06 -0000 1.53 +++ gen/signal.3 11 Oct 2015 08:57:39 -0000 @@ -228,10 +228,13 @@ a specific signal. .Pp When a process which has installed signal handlers forks, the child process inherits the signals. -All caught signals may be reset to their default action by a call +All caught signals, as well as +.Dv SIGCHLD , +are reset to their default action by a call to the .Xr execve 2 function; +other ignored signals remain ignored. .Pp The following functions are either reentrant or not interruptible Index: sys/sigaction.2 =================================================================== RCS file: /cvs/src/lib/libc/sys/sigaction.2,v retrieving revision 1.71 diff -u -p -r1.71 sigaction.2 --- sys/sigaction.2 11 Oct 2015 07:53:49 -0000 1.71 +++ sys/sigaction.2 11 Oct 2015 08:57:39 -0000 @@ -289,9 +289,10 @@ and the restart/interrupt flags are inhe .Pp .Xr execve 2 reinstates the default -action for all signals which were caught and -resets all signals to be caught on the user stack. -Ignored signals remain ignored; +action for +.Dv SIGCHLD +and all signals which were caught; all other signals remain ignored. +All signals are reset to be caught on the user stack and the signal mask remains the same; signals that restart pending system calls continue to do so. .Pp
