aboutsummaryrefslogtreecommitdiff
path: root/libssh
diff options
context:
space:
mode:
authorAris Adamantiadis <aris@0xbadc0de.be>2005-08-31 02:20:36 +0000
committerAris Adamantiadis <aris@0xbadc0de.be>2005-08-31 02:20:36 +0000
commit1b20b8df85e07353f8403a6b55f8206980228639 (patch)
treedfd9fe6425742cc1c84c11c57f60057a3f32fc29 /libssh
parentc7a059f0d316b757714fb3e278044ed30bcdcda3 (diff)
downloadlibssh-1b20b8df85e07353f8403a6b55f8206980228639.tar.gz
libssh-1b20b8df85e07353f8403a6b55f8206980228639.tar.xz
libssh-1b20b8df85e07353f8403a6b55f8206980228639.zip
fixed bug in sample that made the client running in infinite loop.
hunted a bug in channel_poll that returned 0 when EOF. git-svn-id: svn+ssh://svn.berlios.de/svnroot/repos/libssh/trunk@35 7dcaeef0-15fb-0310-b436-a5af3365683c
Diffstat (limited to 'libssh')
-rw-r--r--libssh/channels.c2
-rw-r--r--libssh/server.c1
2 files changed, 3 insertions, 0 deletions
diff --git a/libssh/channels.c b/libssh/channels.c
index a87d338a..31586314 100644
--- a/libssh/channels.c
+++ b/libssh/channels.c
@@ -674,6 +674,8 @@ int channel_poll(CHANNEL *channel, int is_stderr){
} else
return 0; /* nothing is available has said fd_poll */
}
+ if(channel->remote_eof)
+ return 1;
return buffer_get_len(buffer);
}
diff --git a/libssh/server.c b/libssh/server.c
index 31bae3ba..0f429852 100644
--- a/libssh/server.c
+++ b/libssh/server.c
@@ -27,6 +27,7 @@ MA 02111-1307, USA. */
#include <stdio.h>
#include <sys/types.h>
#include <sys/socket.h>
+#include <netinet/in.h>
#include <netdb.h>
#include <errno.h>
#include <string.h>