On Tue, 4 Aug 2009, Peter Stuge wrote:
While I ponder the explanation and try to get my head around the code a bit more, here is a patch that will change the hang behavior. I am not sure this is a fix, but it will make something happen. :)
well, I think it will prove what the cause of the hang is, if it makes the hang go away.
The follow-up question would of course then be how EAGAIN can be returned without a block direction gets set.
The logic is that only the transport layer can cause an EAGAIN, so the only places where this should have to get done is in _libssh2_transport_write() for outgoing data and _libssh2_transport_read() for incoming...
-- / daniel.haxx.se _______________________________________________ libssh2-devel http://cool.haxx.se/cgi-bin/mailman/listinfo/libssh2-devel
