dropbear: fix regression where TTY modes weren't reset for client
[openwrt/staging/chunkeey.git] / package / network / services / dropbear / patches / 010-tty-modes-werent-reset-for-client.patch
diff --git a/package/network/services/dropbear/patches/010-tty-modes-werent-reset-for-client.patch b/package/network/services/dropbear/patches/010-tty-modes-werent-reset-for-client.patch
new file mode 100644 (file)
index 0000000..5854650
--- /dev/null
@@ -0,0 +1,46 @@
+Hash: 7bc6280613f5ab4ee86c14c779739070e5784dfe
+From: Matt Johnston <matt@ucc.asn.au>
+Date: Sun, 24 Mar 2019 20:41:02 +0800
+Subject: Fix regression where TTY modes weren't reset for client
+
+--- a/cli-chansession.c
++++ b/cli-chansession.c
+@@ -35,7 +35,7 @@
+ #include "chansession.h"
+ #include "agentfwd.h"
+-static void cli_cleanupchansess(const struct Channel *channel);
++static void cli_closechansess(const struct Channel *channel);
+ static int cli_initchansess(struct Channel *channel);
+ static void cli_chansessreq(struct Channel *channel);
+ static void send_chansess_pty_req(const struct Channel *channel);
+@@ -51,8 +51,8 @@ const struct ChanType clichansess = {
+       cli_initchansess, /* inithandler */
+       NULL, /* checkclosehandler */
+       cli_chansessreq, /* reqhandler */
+-      NULL, /* closehandler */
+-      cli_cleanupchansess, /* cleanup */
++      cli_closechansess, /* closehandler */
++      NULL, /* cleanup */
+ };
+ static void cli_chansessreq(struct Channel *channel) {
+@@ -84,7 +84,7 @@ out:
+       
+ /* If the main session goes, we close it up */
+-static void cli_cleanupchansess(const struct Channel *UNUSED(channel)) {
++static void cli_closechansess(const struct Channel *UNUSED(channel)) {
+       cli_tty_cleanup(); /* Restore tty modes etc */
+       /* This channel hasn't gone yet, so we have > 1 */
+@@ -388,8 +388,8 @@ static const struct ChanType cli_chan_ne
+       cli_init_netcat, /* inithandler */
+       NULL,
+       NULL,
++      cli_closechansess,
+       NULL,
+-      cli_cleanupchansess
+ };
+ void cli_send_netcat_request() {