version 1.65.2.1, 2001/09/27 19:03:54 |
version 1.65.2.2, 2001/11/15 00:15:19 |
|
|
FD_SET(fileno(stderr), *writesetp); |
FD_SET(fileno(stderr), *writesetp); |
} else { |
} else { |
/* channel_prepare_select could have closed the last channel */ |
/* channel_prepare_select could have closed the last channel */ |
if (session_closed && !channel_still_open()) { |
if (session_closed && !channel_still_open() && |
if (!packet_have_data_to_write()) |
!packet_have_data_to_write()) { |
return; |
/* clear mask since we did not call select() */ |
|
memset(*readsetp, 0, *maxfdp); |
|
memset(*writesetp, 0, *maxfdp); |
|
return; |
} else { |
} else { |
FD_SET(connection_in, *readsetp); |
FD_SET(connection_in, *readsetp); |
} |
} |
|
|
if (id != session_ident) |
if (id != session_ident) |
error("client_channel_closed: id %d != session_ident %d", |
error("client_channel_closed: id %d != session_ident %d", |
id, session_ident); |
id, session_ident); |
|
channel_cancel_cleanup(id); |
session_closed = 1; |
session_closed = 1; |
if (in_raw_mode()) |
if (in_raw_mode()) |
leave_raw_mode(); |
leave_raw_mode(); |