Index: dropbear-0.49/common-channel.c =================================================================== --- dropbear-0.49.orig/common-channel.c 2007-06-04 13:21:39.354993800 +0200 +++ dropbear-0.49/common-channel.c 2007-06-04 13:21:40.676792856 +0200 @@ -310,10 +310,10 @@ send_msg_channel_eof(channel); } - /* And if we can't receive any more data from them either, close up */ + /* And if we can't receive any more data from them either, close up (server only) */ if (!channel->sent_close && channel->readfd == FD_CLOSED - && (ERRFD_IS_WRITE(channel) || channel->errfd == FD_CLOSED) + && !ERRFD_IS_WRITE(channel) && !write_pending(channel)) { TRACE(("sending close, readfd is closed")) send_msg_channel_close(channel);