Null out the socket pointers in X- and port-forwarding channels for

which we close the socket without destroying the channel. John
Peterson reports periodic crashes under heavy load which appear to
be fixed by this, though I don't know the exact circumstances
induced by that load.

[originally from svn r8871]
This commit is contained in:
Simon Tatham 2010-02-17 19:02:04 +00:00
Родитель 7e16457d14
Коммит 38714cecf3
1 изменённых файлов: 2 добавлений и 0 удалений

2
ssh.c
Просмотреть файл

@ -6670,11 +6670,13 @@ static void ssh2_msg_channel_eof(Ssh ssh, struct Packet *pktin)
* wrap up and close the channel ourselves.
*/
x11_close(c->u.x11.s);
c->u.x11.s = NULL;
sshfwd_close(c);
} else if (c->type == CHAN_AGENT) {
sshfwd_close(c);
} else if (c->type == CHAN_SOCKDATA) {
pfd_close(c->u.pfd.s);
c->u.pfd.s = NULL;
sshfwd_close(c);
}
}