On Tue, 13 Apr 2010, Daniel Stenberg wrote:
> Exhibit what behavior exactly? If libssh2 skips the waiting for the remote
> EOF, what happens? Peter's fix added both sending and waiting, and I think
> what we suggest is that we drop the waiting.
Here's the specific change I suggest:
--- a/src/channel.c
+++ b/src/channel.c
@@ -2221,9 +2221,8 @@ channel_close(LIBSSH2_CHANNEL * channel)
if ((retcode = channel_send_eof(channel)))
return retcode;
- if (!channel->remote.eof)
- if ((retcode = channel_wait_eof(channel)))
- return retcode;
+ /* ignore if we have received a remote eof or not, as it is now too
+ late for us to wait for it. Continue closing! */
if (channel->close_state == libssh2_NB_state_idle) {
_libssh2_debug(session, LIBSSH2_TRACE_CONN, "Closing channel %lu/%lu",
-- / daniel.haxx.se _______________________________________________ libssh2-devel http://cool.haxx.se/cgi-bin/mailman/listinfo/libssh2-develReceived on 2010-04-13