diff options
-rw-r--r-- | ChangeLog | 4 | ||||
-rw-r--r-- | mux.c | 8 |
2 files changed, 9 insertions, 3 deletions
@@ -9,6 +9,10 @@ | |||
9 | [sshd.c] | 9 | [sshd.c] |
10 | set FD_CLOEXEC on sock_in/sock_out; bz#1706 from jchadima AT redhat.com | 10 | set FD_CLOEXEC on sock_in/sock_out; bz#1706 from jchadima AT redhat.com |
11 | ok dtucker@ | 11 | ok dtucker@ |
12 | - djm@cvs.openbsd.org 2010/01/29 20:16:17 | ||
13 | [mux.c] | ||
14 | kill correct channel (was killing already-dead mux channel, not | ||
15 | its session channel) | ||
12 | 16 | ||
13 | 20100129 | 17 | 20100129 |
14 | - (dtucker) [openbsd-compat/openssl-compat.c] Bug #1707: Call OPENSSL_config() | 18 | - (dtucker) [openbsd-compat/openssl-compat.c] Bug #1707: Call OPENSSL_config() |
@@ -1,4 +1,4 @@ | |||
1 | /* $OpenBSD: mux.c,v 1.13 2010/01/29 20:16:17 djm Exp $ */ | 1 | /* $OpenBSD: mux.c,v 1.14 2010/01/30 02:54:53 djm Exp $ */ |
2 | /* | 2 | /* |
3 | * Copyright (c) 2002-2008 Damien Miller <djm@openbsd.org> | 3 | * Copyright (c) 2002-2008 Damien Miller <djm@openbsd.org> |
4 | * | 4 | * |
@@ -214,8 +214,10 @@ mux_master_control_cleanup_cb(int cid, void *unused) | |||
214 | debug2("%s: channel %d: not open", __func__, sc->self); | 214 | debug2("%s: channel %d: not open", __func__, sc->self); |
215 | chan_mark_dead(sc); | 215 | chan_mark_dead(sc); |
216 | } else { | 216 | } else { |
217 | chan_read_failed(sc); | 217 | if (sc->istate == CHAN_INPUT_OPEN) |
218 | chan_write_failed(sc); | 218 | chan_read_failed(sc); |
219 | if (sc->ostate == CHAN_OUTPUT_OPEN) | ||
220 | chan_write_failed(sc); | ||
219 | } | 221 | } |
220 | } | 222 | } |
221 | channel_cancel_cleanup(c->self); | 223 | channel_cancel_cleanup(c->self); |