18 lines
750 B
Diff
18 lines
750 B
Diff
Index: dropbear-0.50/common-channel.c
|
|
===================================================================
|
|
--- dropbear-0.50.orig/common-channel.c 2007-08-10 23:47:47.000000000 +0200
|
|
+++ dropbear-0.50/common-channel.c 2007-08-10 23:47:50.000000000 +0200
|
|
@@ -311,10 +311,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);
|