Opened 13 years ago

Last modified 13 years ago

#1148 closed Bug report

Problem connecting to some servers

Reported by: jdwar Owned by:
Priority: normal Component: FileZilla Client
Keywords: Cc: jdwar, Tim Kosse
Component version: Operating system type:
Operating system version:

Description

We are having trouble connecting to some servers and
have traced the problem back to the code.

A bug that was fixed in the latest version of PuTTY has
not been propagated to the latest version of the 2.2.x
branch of FileZilla.

Specifically, when filezilla connects, some servers
send a window adjust (SSH2_MSG_CHANNEL_WINDOW_ADJUST)
to allow the client to send data after creating the
session. FileZilla then fails to trigger the send data
functionality and thus hangs. The method in question is
in SSH.C:

static void ssh2_msg_channel_window_adjust(Ssh ssh,
struct Packet *pktin)
{

unsigned i = ssh_pkt_getuint32(pktin);
struct ssh_channel *c;
c = find234(ssh->channels, &i, ssh_channelfind);
if (c && !c->closes) {

c->v.v2.remwindow += ssh_pkt_getuint32(pktin);

ssh2_try_send_and_unthrottle(c);

}

}

The line with the > does not exist in FileZilla, but
does exist in the latest PuTTY. In addition, they added
the body of that method:

static void ssh2_try_send_and_unthrottle(struct
ssh_channel *c)
{

int bufsize;
if (c->closes)

return; /* don't send on

closing channels */

bufsize = ssh2_try_send(c);
if (bufsize == 0) {

switch (c->type) {

case CHAN_MAINSESSION:

/* stdin need not receive an unthrottle

  • notification since it will be polled */

break;

case CHAN_X11:

x11_unthrottle(c->u.x11.s);
break;

case CHAN_AGENT:

/* agent sockets are request/response and

need no

  • buffer management */

break;

case CHAN_SOCKDATA:

pfd_unthrottle(c->u.pfd.s);
break;

}

}

}

Can you update FileZilla with this part of the laetst
PuTTY code (or all the latest changes, if possible, the
latest PuTTY works great on all servers)?

Thanks!
James

Change History (1)

comment:1 Changed 13 years ago by Tim Kosse

This change is only part of a complex set of changes to
PuTTY which I unfortunately don't understand.
Updating the version of the PuTTY source used by FZ2 would
be an extreme amount of work.

However, for the upcoming FileZilla 3, SFTP support has been
implemented using a much newer version of the PuTTY source
(and also using a different method of communication). You
can download nightly builds of FileZilla 3 from
http://filezilla-project.org/nightly.php

Note: See TracTickets for help on using tickets.