--- a/channels.c +++ b/channels.c @@ -1006,7 +1006,8 @@ if (!c->tcpwinsz || c->dynamic_window > 0) c->tcpwinsz = channel_tcpwinsz(); - c->remote_window = MIN(c->remote_window, 2 * c->tcpwinsz); + if (c->dynamic_window) + c->remote_window = MIN(c->remote_window, 2 * c->tcpwinsz); if (c->istate == CHAN_INPUT_OPEN && c->remote_window > 0 &&