Subject: Re: tickets #250, #254, #256 writes -> LIBSSH2_ERROR_BAD_USE ->stuck

Re: tickets #250, #254, #256 writes -> LIBSSH2_ERROR_BAD_USE ->stuck

From: Chris Hecker <checker_at_d6.com>
Date: Wed, 20 Feb 2013 12:48:34 -0800

No clue! I'm not sure it'd have to change the current API, except
changing the semantics of EAGAIN (loosening them), and adding the
non-blocking pump call. I haven't looked at it closely. It seems like
most of the changes would be under the hood.

To be honest, I don't actually understand what's going wrong in the
first place. A write is partially put on the wire, and then another
keepalive/whatever packet is written in the middle of it? Or just that
gets partially written but doesn't retry and so blocks any other writes?
  No idea yet.

I applied the patches in 256 and 250, and it's better, but I can still
get it to hang up in send_existing, so they're not a complete fix.

Chris

On 2013-02-19 17:39, Peter Stuge wrote:
> Chris Hecker wrote:
>> Basically, making libssh2 queue up writes (to a point) and then get
>> pumped by the app if in nonblocking mode,
>
> How do you propose that the new API for this looks?
>
>
> //Peter
> _______________________________________________
> libssh2-devel http://cool.haxx.se/cgi-bin/mailman/listinfo/libssh2-devel
>
_______________________________________________
libssh2-devel http://cool.haxx.se/cgi-bin/mailman/listinfo/libssh2-devel
Received on 2013-02-20