diff options
author | Matt Johnston <matt@ucc.asn.au> | 2008-09-23 12:03:01 +0000 |
---|---|---|
committer | Matt Johnston <matt@ucc.asn.au> | 2008-09-23 12:03:01 +0000 |
commit | b98d13effb635f0f0ad76b05c2e7616f3e99305a (patch) | |
tree | f249963d3670bf14fbdfa9a359ffada3fb9efe34 /common-channel.c | |
parent | 299d26dab7af8d7712944c61c21129a81d7bb889 (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.c | 5 |
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 { |