telnet: add disabled code to emit EC and IP
authorDenys Vlasenko <vda.linux@googlemail.com>
Fri, 18 Oct 2019 14:47:37 +0000 (16:47 +0200)
committerDenys Vlasenko <vda.linux@googlemail.com>
Fri, 18 Oct 2019 14:47:37 +0000 (16:47 +0200)
> I'm trying to connect to a Korenix 3005 switch through telnet
> for management purposes, and all is well except for the backspace character
> - seems like my switch doesn't handle it too well and instead of erasing
> the last character all it does is print some garbage to the screen.
> I've had the same issue before while using putty, but saw a solution that
> suggests to enable "Telnet special commands" in the options menu, and it
> worked.

Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
networking/telnet.c

index 5c8805265a1b0aa432dda7934cd22f2d732abd9f..9fc85050bac7a01d3b95dc02241f80501ce533b1 100644 (file)
@@ -238,6 +238,18 @@ static void handle_net_output(int len)
                        *dst = '\r'; /* Enter -> CR LF */
                        *++dst = '\n';
                }
+#if 0
+/* putty's "special commands" mode does this: */
+/* Korenix 3005 switch needs at least the backspace tweak */
+               if (c == 0x08 || c == 0x7f) { /* ctrl+h || backspace */
+                       *dst = IAC;
+                       *++dst = EC;
+               }
+               if (c == 0x03) { /* ctrl+c */
+                       *dst = IAC;
+                       *++dst = IP;
+               }
+#endif
                dst++;
        }
        if (dst - outbuf != 0)