1
1

socket.c: Fixed setting max_fd which breaks ssh_select().

Signed-off-by: Andreas Schneider <asn@cynapses.org>
Этот коммит содержится в:
Vic Lee 2010-09-20 19:22:19 +02:00 коммит произвёл Andreas Schneider
родитель fe31fcaeef
Коммит a92545517a

Просмотреть файл

@ -495,10 +495,14 @@ void ssh_socket_fd_set(ssh_socket s, fd_set *set, socket_t *max_fd) {
FD_SET(s->fd_in,set); FD_SET(s->fd_in,set);
FD_SET(s->fd_out,set); FD_SET(s->fd_out,set);
if (s->fd_in >= 0 && s->fd_in != SSH_INVALID_SOCKET) { if (s->fd_in >= 0 &&
s->fd_in >= *max_fd &&
s->fd_in != SSH_INVALID_SOCKET) {
*max_fd = s->fd_in + 1; *max_fd = s->fd_in + 1;
} }
if (s->fd_out >= 0 && s->fd_in != SSH_INVALID_SOCKET) { if (s->fd_out >= 0 &&
s->fd_out >= *max_fd &&
s->fd_out != SSH_INVALID_SOCKET) {
*max_fd = s->fd_out + 1; *max_fd = s->fd_out + 1;
} }
} }