aboutsummaryrefslogtreecommitdiffstats
path: root/package/network/services/dropbear
diff options
context:
space:
mode:
authorKonstantin Demin <rockdrilla@gmail.com>2019-03-25 21:41:37 +0300
committerHans Dedecker <dedeckeh@gmail.com>2019-03-25 22:25:33 +0100
commitc40a84cc15897780557ad40f082ee185c9b49ba0 (patch)
tree2021353f6e82952952e6698e5fc398ed6c397ca0 /package/network/services/dropbear
parentddf1a063261202e92caf58f18a1afa0085de9b8d (diff)
downloadupstream-c40a84cc15897780557ad40f082ee185c9b49ba0.tar.gz
upstream-c40a84cc15897780557ad40f082ee185c9b49ba0.tar.bz2
upstream-c40a84cc15897780557ad40f082ee185c9b49ba0.zip
dropbear: fix regression where TTY modes weren't reset for client
cherry-pick upstream commit 7bc6280613f5ab4ee86c14c779739070e5784dfe Signed-off-by: Konstantin Demin <rockdrilla@gmail.com>
Diffstat (limited to 'package/network/services/dropbear')
-rw-r--r--package/network/services/dropbear/patches/010-tty-modes-werent-reset-for-client.patch46
1 files changed, 46 insertions, 0 deletions
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
index 0000000000..585465004a
--- /dev/null
+++ b/package/network/services/dropbear/patches/010-tty-modes-werent-reset-for-client.patch
@@ -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() {