prevent dropbear from closing the tty prematurely if the readfd closes
authorFelix Fietkau <nbd@openwrt.org>
Sun, 6 May 2007 17:53:16 +0000 (17:53 +0000)
committerFelix Fietkau <nbd@openwrt.org>
Sun, 6 May 2007 17:53:16 +0000 (17:53 +0000)
git-svn-id: svn://svn.openwrt.org/openwrt/trunk@7117 3c298f89-4303-0410-b956-a3cf2f4a3e73

package/dropbear/patches/160-tty_close.patch [new file with mode: 0644]

diff --git a/package/dropbear/patches/160-tty_close.patch b/package/dropbear/patches/160-tty_close.patch
new file mode 100644 (file)
index 0000000..01b6251
--- /dev/null
@@ -0,0 +1,19 @@
+diff -ur db.old/common-channel.c db.dev/common-channel.c
+--- db.old/common-channel.c    2007-02-22 17:17:15.000000000 +0100
++++ db.dev/common-channel.c    2007-05-06 19:50:19.154943528 +0200
+@@ -309,15 +309,6 @@
+                       && (ERRFD_IS_WRITE(channel) || channel->errfd == FD_CLOSED)) {
+               send_msg_channel_eof(channel);
+       }
+-
+-      /* And if we can't receive any more data from them either, close up */
+-      if (!channel->sent_close
+-                      && channel->readfd == FD_CLOSED
+-                      && (ERRFD_IS_WRITE(channel) || channel->errfd == FD_CLOSED)
+-                      && !write_pending(channel)) {
+-              TRACE(("sending close, readfd is closed"))
+-              send_msg_channel_close(channel);
+-      }
+ }
+ /* Check whether a deferred (EINPROGRESS) connect() was successful, and