Debian bug 531078: socat execs children with SIGCHLD ignored - fixed

This commit is contained in:
Gerhard Rieger 2009-12-30 21:12:31 +01:00
parent 30a3ec3baa
commit 1cf3a1c4c9
3 changed files with 9 additions and 3 deletions

View file

@ -1,4 +1,8 @@
corrections:
Debian bug 531078: socat execs children with SIGCHLD ignored; corrected
to default. Thanks to Martin Dorey for reporting this bug.
####################### V 1.7.1.1: ####################### V 1.7.1.1:
corrections: corrections:

View file

@ -1 +1 @@
"1.7.1.1" "1.7.1.1+subsigchld"

View file

@ -414,8 +414,10 @@ int _xioopen_foxec(int xioflags, /* XIO_RDONLY etc. */
gid_t group; gid_t group;
if (withfork) { if (withfork) {
if (Signal(SIGCHLD, SIG_IGN) == SIG_ERR) { /* The child should have default handling for SIGCHLD. */
Warn1("signal(SIGCHLD, SIG_IGN): %s", strerror(errno)); /* In particular, it's not defined whether ignoring SIGCHLD is inheritable. */
if (Signal(SIGCHLD, SIG_DFL) == SIG_ERR) {
Warn1("signal(SIGCHLD, SIG_DFL): %s", strerror(errno));
} }
#if HAVE_PTY #if HAVE_PTY