#158: libssh2_sftp_write returns incorrect value
--------------------+-------------------------------------------------------
Reporter: mstrsn | Owner:
Type: defect | Status: new
Priority: normal | Milestone:
Component: SFTP | Version: 1.2.4
Keywords: | Blocking:
Blockedby: |
--------------------+-------------------------------------------------------
The function libssh2_sftp_write incorrectly returns
LIBSSH2_ERROR_SOCKET_SEND when there is no room on the server. I believe
the function should either block until there is room on the server, or it
should return LIBSSH2_ERROR_EAGAIN.
The following patch works for me, but that's just because I'm only worried
about non-blocking mode. Someone more knowledgeable with the code should
implement the proper fix:
{{{
diff sftp.c
1469a1470,1472
> if(channel->local.window_size == 0) {
> return LIBSSH2_ERROR_EAGAIN;
> }
}}}
-- Ticket URL: <http://libssh2.stuge.se/ticket/158> libssh2 <http://libssh2.stuge.se/> C library for writing portable SSH2 clients _______________________________________________ libssh2-devel http://cool.haxx.se/cgi-bin/mailman/listinfo/libssh2-develReceived on 2010-02-18