Fixed writechannel bug as described in ticket in #246, now closed
authorFlorian Fainelli <florian@openwrt.org>
Sat, 4 Feb 2006 23:12:51 +0000 (23:12 +0000)
committerFlorian Fainelli <florian@openwrt.org>
Sat, 4 Feb 2006 23:12:51 +0000 (23:12 +0000)
SVN-Revision: 3131

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

diff --git a/openwrt/package/dropbear/patches/160-writechannel.patch b/openwrt/package/dropbear/patches/160-writechannel.patch
new file mode 100644 (file)
index 0000000..0e84a99
--- /dev/null
@@ -0,0 +1,12 @@
+diff -urN dropbear-0.47.orig/common-channel.c dropbear-0.47/common-channel.c
+--- dropbear-0.47.orig/common-channel.c        2005-12-09 06:42:31.000000000 +0100
++++ dropbear-0.47/common-channel.c     2006-02-05 00:03:37.000000000 +0100
+@@ -377,7 +377,7 @@
+       cbuf_incrread(cbuf, len);
+       channel->recvdonelen += len;
+-      if (fd == channel->writefd && len == maxlen && channel->recveof) { 
++      if (fd == channel->writefd && len == maxlen && channel->recveof && cbuf_getused(channel->writebuf) == 0) {
+               /* Check if we're closing up */
+               closewritefd(channel);
+               TRACE(("leave writechannel: recveof set"))