On Aug 24, 2009, at 11:56 AM, Jeremy Knope wrote:
On Aug 24, 2009, at 11:43 AM, Daniel Stenberg wrote:
On Mon, 24 Aug 2009, Jeremy Knope wrote:
[libssh2] 4.745432 Conn: Close received for channel 0/0
Seems like libssh2 says the channel close was received but is
still blocked?
Ehum. It does indeed look like you're onto something here.
Not sure if I'm reading it right, but I'm going to tweak some more
and see if I can get more info about what's going on with writing
of the data.
That "Close received" message comes from the _libssh2_packet_add()
function. The _libssh2_packet_add() gets called from one place, and
that's from fullpacket() which is only called from within
_libssh2_transport_read() which is the lowest level SSH transport
reading function.
I have a feeling that the error is around src/channel.c:1830 (in
current git) where it only checks the remote.close or
libssh2_channel_eof() if bytes_read == 0, which seems like wrong
presumption.
hope that helps then, the tests I was just doing where it was
hanging on close wait was just to 'localhost', just was doing a
couple tests on a local OS X server to see if there's a difference
with trace on etc. With that server it's consistently corrupting
the files but successfully exiting the wait, just all the files I've
tried ended up bad on the other end. I don't see anything
suspicious in the trace, or know if it's related to the above
issue. Here's an example of an image file:
<test.png>_______________________________________________
libssh2-devel http://cool.haxx.se/cgi-bin/mailman/listinfo/libssh2-devel
Oh to add to this, the corruption only happened when I was using a
buffer size larger than what libssh2's write packet size limit was
(32*1024 I believe was the limit)
it would say it was splitting up the writes, I had it set to 128*1024
for buffer size. Once I set it to 32*1024 or lower I no longer had
files corrupting when going to this OS X server.
--
Jeremy Knope / Software Developer / Ambrosia Software, Inc. --
http://www.AmbrosiaSW.com/
_______________________________________________
libssh2-devel http://cool.haxx.se/cgi-bin/mailman/listinfo/libssh2-devel