From 31fdb4ecf6ea577c5a8dc17e888f091337163258 Mon Sep 17 00:00:00 2001 From: Vic Lee Date: Tue, 21 Sep 2010 00:32:08 +0800 Subject: [PATCH] socket.c: Fixed setting max_fd which breaks ssh_select(). Signed-off-by: Andreas Schneider --- libssh/socket.c | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/libssh/socket.c b/libssh/socket.c index 516639c3..c8fd00fb 100644 --- a/libssh/socket.c +++ b/libssh/socket.c @@ -265,7 +265,10 @@ void ssh_socket_fd_set(struct socket *s, fd_set *set, socket_t *max_fd) { if (s->fd == SSH_INVALID_SOCKET) return; FD_SET(s->fd,set); - if (s->fd >= 0 && s->fd != SSH_INVALID_SOCKET) { + + if (s->fd >= 0 && + s->fd >= *max_fd && + s->fd != SSH_INVALID_SOCKET) { *max_fd = s->fd + 1; } }