diff options
Diffstat (limited to 'channels.c')
-rw-r--r-- | channels.c | 7 |
1 files changed, 3 insertions, 4 deletions
diff --git a/channels.c b/channels.c index 7da46143f..50d6f16ad 100644 --- a/channels.c +++ b/channels.c | |||
@@ -39,7 +39,7 @@ | |||
39 | */ | 39 | */ |
40 | 40 | ||
41 | #include "includes.h" | 41 | #include "includes.h" |
42 | RCSID("$OpenBSD: channels.c,v 1.167 2002/02/06 14:55:15 markus Exp $"); | 42 | RCSID("$OpenBSD: channels.c,v 1.168 2002/02/14 23:27:59 markus Exp $"); |
43 | 43 | ||
44 | #include "ssh.h" | 44 | #include "ssh.h" |
45 | #include "ssh1.h" | 45 | #include "ssh1.h" |
@@ -644,15 +644,14 @@ channel_register_filter(int id, channel_filter_fn *fn) | |||
644 | 644 | ||
645 | void | 645 | void |
646 | channel_set_fds(int id, int rfd, int wfd, int efd, | 646 | channel_set_fds(int id, int rfd, int wfd, int efd, |
647 | int extusage, int nonblock) | 647 | int extusage, int nonblock, u_int window_max) |
648 | { | 648 | { |
649 | Channel *c = channel_lookup(id); | 649 | Channel *c = channel_lookup(id); |
650 | if (c == NULL || c->type != SSH_CHANNEL_LARVAL) | 650 | if (c == NULL || c->type != SSH_CHANNEL_LARVAL) |
651 | fatal("channel_activate for non-larval channel %d.", id); | 651 | fatal("channel_activate for non-larval channel %d.", id); |
652 | channel_register_fds(c, rfd, wfd, efd, extusage, nonblock); | 652 | channel_register_fds(c, rfd, wfd, efd, extusage, nonblock); |
653 | c->type = SSH_CHANNEL_OPEN; | 653 | c->type = SSH_CHANNEL_OPEN; |
654 | /* XXX window size? */ | 654 | c->local_window = c->local_window_max = window_max; |
655 | c->local_window = c->local_window_max = c->local_maxpacket * 2; | ||
656 | packet_start(SSH2_MSG_CHANNEL_WINDOW_ADJUST); | 655 | packet_start(SSH2_MSG_CHANNEL_WINDOW_ADJUST); |
657 | packet_put_int(c->remote_id); | 656 | packet_put_int(c->remote_id); |
658 | packet_put_int(c->local_window); | 657 | packet_put_int(c->local_window); |