mirror of
https://git.tartarus.org/simon/putty.git
synced 2025-01-10 09:58:01 +00:00
Extra safety feature to avoid sending SSH2_MSG_WINDOW_ADJUST on
a nonexistent channel. I don't quite know why this was happening, but whatever it was this ought to fix it. [originally from svn r1540]
This commit is contained in:
parent
290e08ae76
commit
cf8190f637
8
ssh.c
8
ssh.c
@ -3734,6 +3734,14 @@ static int ssh2_try_send(struct ssh_channel *c)
|
|||||||
*/
|
*/
|
||||||
static void ssh2_set_window(struct ssh_channel *c, unsigned newwin)
|
static void ssh2_set_window(struct ssh_channel *c, unsigned newwin)
|
||||||
{
|
{
|
||||||
|
/*
|
||||||
|
* Never send WINDOW_ADJUST for a channel that the remote side
|
||||||
|
* already thinks it's closed; there's no point, since it won't
|
||||||
|
* be sending any more data anyway.
|
||||||
|
*/
|
||||||
|
if (c->closes != 0)
|
||||||
|
return;
|
||||||
|
|
||||||
if (newwin > c->v.v2.locwindow) {
|
if (newwin > c->v.v2.locwindow) {
|
||||||
ssh2_pkt_init(SSH2_MSG_CHANNEL_WINDOW_ADJUST);
|
ssh2_pkt_init(SSH2_MSG_CHANNEL_WINDOW_ADJUST);
|
||||||
ssh2_pkt_adduint32(c->remoteid);
|
ssh2_pkt_adduint32(c->remoteid);
|
||||||
|
Loading…
Reference in New Issue
Block a user