Differences From Artifact [7b91ff1d99]:
- File ssh.c — part of check-in [5cfe4be596] at 2004-12-01 09:34:12 on branch trunk — Bah. Ben points out that SSH_1_ version strings should still end in \n, and also that `\r' and `\n' don't mean what I think they mean on all compilers (Mac reverses them). (user: simon size: 226638)
To Artifact [c450a901da]:
- File ssh.c — part of check-in [f3f0eafa38] at 2004-12-02 07:37:28 on branch trunk — NULL a couple of members after freeing them in ssh_free(). In particular, should stop ssh_do_close() accessing freed ssh->channels when invoked later from ssh_free(). Spotted by Fred Sauer. (Perhaps this is the cause of the crashes people have been reporting on abnormal closures such as `Software caused connection abort'? I've not been able to test this.) (user: jacob size: 226685)
| ︙ | |||
7231 7232 7233 7234 7235 7236 7237 7238 7239 7240 7241 7242 7243 7244 7245 7246 7247 7248 7249 7250 | 7231 7232 7233 7234 7235 7236 7237 7238 7239 7240 7241 7242 7243 7244 7245 7246 7247 7248 7249 7250 7251 7252 | + + |
if (c->u.pfd.s != NULL)
pfd_close(c->u.pfd.s);
break;
}
sfree(c);
}
freetree234(ssh->channels);
ssh->channels = NULL;
}
if (ssh->rportfwds) {
while ((pf = delpos234(ssh->rportfwds, 0)) != NULL)
sfree(pf);
freetree234(ssh->rportfwds);
ssh->rportfwds = NULL;
}
sfree(ssh->deferred_send_data);
if (ssh->x11auth)
x11_free_auth(ssh->x11auth);
sfree(ssh->do_ssh_init_state);
sfree(ssh->do_ssh1_login_state);
sfree(ssh->do_ssh2_transport_state);
|
| ︙ |