From a2e53ccb64c42a635b4618b592e470a02c0142b0 Mon Sep 17 00:00:00 2001 From: Damien Miller Date: Wed, 29 Nov 2000 11:26:45 +1100 Subject: - (djm) Fix(?) the ssh hang-on-logout/data-from-child race --- ChangeLog | 3 +++ session.c | 5 ++--- 2 files changed, 5 insertions(+), 3 deletions(-) diff --git a/ChangeLog b/ChangeLog index 82288c998..092741164 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,6 @@ +20001129 + - (djm) Fix(?) the ssh hang-on-logout/data-from-child race + 20001125 - (djm) Give up privs when reading seed file diff --git a/session.c b/session.c index 826307ef1..b6c847b8f 100644 --- a/session.c +++ b/session.c @@ -1898,13 +1898,12 @@ session_exit_message(Session *s, int status) * interested in data we write. * Note that we must not call 'chan_read_failed', since there could * be some more data waiting in the pipe. - * djm - This is no longer true as we have allowed one pass through - * the select loop before killing the connection */ if (c->ostate != CHAN_OUTPUT_CLOSED) chan_write_failed(c); if (c->istate != CHAN_INPUT_CLOSED) - chan_read_failed(c); + c->istate = CHAN_INPUT_WAIT_DRAIN; + s->chanid = -1; } -- cgit v1.2.3