On Wed, 5 May 2010, Xu, Qiang (FXSGSC) wrote:

I seem to have found the reason by comparing the two traces captured when using libcurl and when using sftp_write_nonblock:

You make me tired. I already suggested EXACTLY this test several emails ago.

The constant is tentatively changed to 8192 (half of 16KB), and the change makes the difference. The transfer to the SFTP server succeeds! So, it seems that this Reflection server has a stricter/smaller buffer size requirement.

So the problem is then most likely in the server end, as I don't believe libssh2 ever uses any illegal packet sizes. You could of course try the non-blocking libssh2 SFTP example snippet with a 16KB buffer to see what happens. If this theory holds, it should fail...

Tomorrow, I'll tried to increase it to 12KB to see whether it still works. I want to increase the buffer size to as big a value as possible, to enhance the transfer speed.

I would also encourage you to contact whoever makes that SFTP server and confront them with these facts and ask them about specific details on why it says/does this and what we and they can do about the situation. Building a custom libcurl with a smaller buffer may be a solution for you, right now, but it certainly is not even a half-baked work-around for the long term - and I'm in this game long term...

--

 / daniel.haxx.se
-------------------------------------------------------------------
List admin: http://cool.haxx.se/list/listinfo/curl-library
Etiquette:  http://curl.haxx.se/mail/etiquette.html

Reply via email to