From 807cb635c1896c811481399a55e9739cfa999c81 Mon Sep 17 00:00:00 2001 From: Aris Adamantiadis Date: Sun, 9 Aug 2009 00:20:42 +0200 Subject: [PATCH] Fixed channel_poll broken when delayed EOF recvd Previous code returned SSH_EOF even if data was left in buffer --- libssh/channels.c | 3 +++ 1 file changed, 3 insertions(+) diff --git a/libssh/channels.c b/libssh/channels.c index 84a222eb..c603d7ab 100644 --- a/libssh/channels.c +++ b/libssh/channels.c @@ -1748,6 +1748,9 @@ int channel_poll(ssh_channel channel, int is_stderr){ } } + if (buffer_get_rest_len(stdbuf) > 0) + return buffer_get_rest_len(stdbuf); + if (channel->remote_eof) { leave_function(); return SSH_EOF;