Subject: Re: libssh2 master acd9bd6 always do "forced" window updates

Re: libssh2 master acd9bd6 always do "forced" window updates

From: Alexander Lamaison <swish_at_lammy.co.uk>
Date: Wed, 4 Apr 2012 12:07:43 +0100

On 4 April 2012 12:06, Alexander Lamaison <swish_at_lammy.co.uk> wrote:
> On 3 April 2012 21:44,  <libssh2_at_git.stuge.se> wrote:
>> - Log -----------------------------------------------------------------
>> commit acd9bd6104a8e9427293bcdf67b4850f7982b1d4
>> Author: Daniel Stenberg <daniel_at_haxx.se>
>> Commit: Daniel Stenberg <daniel_at_haxx.se>
>>
>>    always do "forced" window updates
>>
>>    When calling _libssh2_channel_receive_window_adjust() internally, we now
>>    always use the 'force' option to prevent libssh2 to avoid sending the
>>    update if the update isn't big enough.
>>
>>    It isn't fully analyzed but we have seen corner cases which made a
>>    necessary window update not get send due to this and then the other side
>>    doesn't send data our side then sits waiting for forever.
>>
>> diff --git a/src/channel.c b/src/channel.c
>> index 5181f6f..63e5d5b 100644
>> --- a/src/channel.c
>> +++ b/src/channel.c
>> @@ -1418,7 +1418,7 @@ _libssh2_channel_flush(LIBSSH2_CHANNEL *channel, int streamid)
>>
>
> ... snip
>
> Somehow, this fixes the problems on Windows where writing would block
> after around 90MB.  I'm not sure I understand the logic but it works!

I should have said by 'writing' I mean libssh2_sftp_write.

Alex

-- 
Swish - Easy SFTP for Windows Explorer (http://www.swish-sftp.org)
_______________________________________________
libssh2-devel http://cool.haxx.se/cgi-bin/mailman/listinfo/libssh2-devel
Received on 2012-04-04