]> asedeno.scripts.mit.edu Git - PuTTY.git/commitdiff
Over-enthusiastic assertions in the port forwarding code removed.
authorSimon Tatham <anakin@pobox.com>
Sat, 5 Mar 2005 18:14:57 +0000 (18:14 +0000)
committerSimon Tatham <anakin@pobox.com>
Sat, 5 Mar 2005 18:14:57 +0000 (18:14 +0000)
Port forwardings are set up before initialising the last few details
of the main shell session, so ssh->state can reasonably hold values
other than SSH_STATE_SESSION and SSH_STATE_CLOSED during calls to
sshfwd_*.

[originally from svn r5446]

ssh.c

diff --git a/ssh.c b/ssh.c
index 7f3748af7eafcac4d261387d3e9aeefa28a067c7..94a04fd069dc7627eaca91574fe920623a9dfdb1 100644 (file)
--- a/ssh.c
+++ b/ssh.c
@@ -3682,10 +3682,8 @@ void sshfwd_close(struct ssh_channel *c)
 {
     Ssh ssh = c->ssh;
 
-    if (ssh->state != SSH_STATE_SESSION) {
-       assert(ssh->state == SSH_STATE_CLOSED);
+    if (ssh->state == SSH_STATE_CLOSED)
        return;
-    }
 
     if (c && !c->closes) {
        /*
@@ -3722,10 +3720,8 @@ int sshfwd_write(struct ssh_channel *c, char *buf, int len)
 {
     Ssh ssh = c->ssh;
 
-    if (ssh->state != SSH_STATE_SESSION) {
-       assert(ssh->state == SSH_STATE_CLOSED);
+    if (ssh->state == SSH_STATE_CLOSED)
        return 0;
-    }
 
     if (ssh->version == 1) {
        send_packet(ssh, SSH1_MSG_CHANNEL_DATA,
@@ -3751,10 +3747,8 @@ void sshfwd_unthrottle(struct ssh_channel *c, int bufsize)
 {
     Ssh ssh = c->ssh;
 
-    if (ssh->state != SSH_STATE_SESSION) {
-       assert(ssh->state == SSH_STATE_CLOSED);
+    if (ssh->state == SSH_STATE_CLOSED)
        return;
-    }
 
     if (ssh->version == 1) {
        if (c->v.v1.throttling && bufsize < SSH1_BUFFER_LIMIT) {