[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: brain dump
[Thread Prev] | [Thread Next]
- Subject: Re: brain dump
- From: Aris Adamantiadis <aris@xxxxxxxxxxxx>
- Reply-to: libssh@xxxxxxxxxx
- Date: Thu, 24 Dec 2009 05:03:19 +0100
- To: libssh@xxxxxxxxxx
Hi Andreas,What gmoonen describes is not possible because each channel has a window size, which is updated on user read (channel_read) and not just channel_poll. So, this behaviour is localy possible (on small sizes) but does not expand to megabytes of data.
Regards, Aris Andreas Schneider a écrit :
[17:18:53] <gmoonen> Owe and one more small issue i found in ssh_handle_packets() if you have a slow computer (or select for detection of data) and a fast network you can get a almost inf loop when doing a command which receives alot of data (like cat /dev/zero) [17:19:12] <gmoonen> bacause everytime a packet has been processed there is already data available on the network socket. [17:21:12] <gmoonen> Event I see at my local code: poll says bytes available, packet_read reads it, packet_translate translates it, and session_parse does it's work, and the poll function already sees more data again [17:21:31] <gmoonen> Command i'm using is "while true; do echo 'xxxxxxx'; done;" [17:21:56] <gmoonen> I tell because the enter (\n) seems to split op the different packets which are available [17:22:24] <gmoonen> Every poll there is 8 or 16 bytes available (for data, those xxxxxxx) [17:22:41] <gmoonen> (There is more available, but that is the result data size)
Re: brain dump | Mikhail Kulinich <tysonite@xxxxxxxxx> |
brain dump | Andreas Schneider <mail@xxxxxxxxxxxx> |