From fa6a2e9319cf37780213e40dd7c07daeecdce60a Mon Sep 17 00:00:00 2001 From: Tom Yu Date: Tue, 24 Feb 1998 04:09:50 +0000 Subject: [PATCH] * utility.c (ptyflush, netflush): Explicitly reset SIGCHLD handler before calling cleanup(). [telnet/546] * telnetd.c (telnet): Explicitly reset SIGCHLD handler before calling cleanup(). [telnet/546] * state.c (dooption): Explicitly reset SIGCHLD handler before calling cleanup(). [telnet/546] git-svn-id: svn://anonsvn.mit.edu/krb5/trunk@10471 dc483132-0cff-0310-8789-dd5450dbe970 --- src/appl/telnet/telnetd/ChangeLog | 11 +++++++++++ src/appl/telnet/telnetd/state.c | 1 + src/appl/telnet/telnetd/telnetd.c | 1 + src/appl/telnet/telnetd/utility.c | 2 ++ 4 files changed, 15 insertions(+) diff --git a/src/appl/telnet/telnetd/ChangeLog b/src/appl/telnet/telnetd/ChangeLog index ca8b999e9..4bdfd7311 100644 --- a/src/appl/telnet/telnetd/ChangeLog +++ b/src/appl/telnet/telnetd/ChangeLog @@ -1,3 +1,14 @@ +Mon Feb 23 22:58:22 1998 Tom Yu + + * utility.c (ptyflush, netflush): Explicitly reset SIGCHLD handler + before calling cleanup(). [telnet/546] + + * telnetd.c (telnet): Explicitly reset SIGCHLD handler before + calling cleanup(). [telnet/546] + + * state.c (dooption): Explicitly reset SIGCHLD handler before + calling cleanup(). [telnet/546] + Wed Feb 18 15:38:31 1998 Tom Yu * Makefile.in: Remove trailing slash from thisconfigdir. Fix up diff --git a/src/appl/telnet/telnetd/state.c b/src/appl/telnet/telnetd/state.c index afca74c97..46feffbb9 100644 --- a/src/appl/telnet/telnetd/state.c +++ b/src/appl/telnet/telnetd/state.c @@ -947,6 +947,7 @@ dooption(option) send_will(TELOPT_LOGOUT, 0); set_my_state_will(TELOPT_LOGOUT); (void)netflush(); + (void)signal(SIGCHLD, SIG_DFL); cleanup(0); /* NOT REACHED */ break; diff --git a/src/appl/telnet/telnetd/telnetd.c b/src/appl/telnet/telnetd/telnetd.c index 54fc12a39..983747286 100644 --- a/src/appl/telnet/telnetd/telnetd.c +++ b/src/appl/telnet/telnetd/telnetd.c @@ -1501,6 +1501,7 @@ telnet(f, p, host) if (FD_ISSET(p, &obits) && (pfrontp - pbackp) > 0) ptyflush(); } + (void) signal(SIGCHLD, SIG_DFL); cleanup(0); } /* end of telnet */ diff --git a/src/appl/telnet/telnetd/utility.c b/src/appl/telnet/telnetd/utility.c index eb31a76a1..8f888bc02 100644 --- a/src/appl/telnet/telnetd/utility.c +++ b/src/appl/telnet/telnetd/utility.c @@ -122,6 +122,7 @@ ptyflush() if (n < 0) { if (errno == EWOULDBLOCK || errno == EINTR) return; + (void)signal(SIGCHLD, SIG_DFL); cleanup(0); } pbackp += n; @@ -287,6 +288,7 @@ netflush() if (n < 0) { if (errno == EWOULDBLOCK || errno == EINTR) return; + (void)signal(SIGCHLD, SIG_DFL); cleanup(0); } nbackp += n; -- 2.26.2