summaryrefslogtreecommitdiffhomepage
path: root/common-channel.c
diff options
context:
space:
mode:
authorMatt Johnston <matt@ucc.asn.au>2008-09-23 12:03:01 +0000
committerMatt Johnston <matt@ucc.asn.au>2008-09-23 12:03:01 +0000
commitb98d13effb635f0f0ad76b05c2e7616f3e99305a (patch)
treef249963d3670bf14fbdfa9a359ffada3fb9efe34 /common-channel.c
parent299d26dab7af8d7712944c61c21129a81d7bb889 (diff)
Don't send anything in response to a SSH_MSG_CHANNEL_REQUEST if we have
already sent a SSH_MSG_CHANNEL_CLOSE. This fixes a bug triggered by more recent versions of putty with tcp fowarding and window adjustment request messages. --HG-- extra : convert_revision : 10b2f286b9886364db39dfbb4f8f46e49e345d87
Diffstat (limited to 'common-channel.c')
-rw-r--r--common-channel.c5
1 files changed, 5 insertions, 0 deletions
diff --git a/common-channel.c b/common-channel.c
index 09fe425..2105184 100644
--- a/common-channel.c
+++ b/common-channel.c
@@ -572,6 +572,11 @@ void recv_msg_channel_request() {
channel = getchannel();
+ if (channel->sent_close) {
+ TRACE(("leave recv_msg_channel_request: already closed channel"))
+ return;
+ }
+
if (channel->type->reqhandler) {
channel->type->reqhandler(channel);
} else {