20

When I use telnet with rlwrap it looks like there is no way to kill the client. Am I missing something here or I really have to kill the process with the kill command?

3 Answers3

19

rlwrap is a wrapper for GNU readline, so it's doing everything locally and only passing your input through after you press Enter. When you press Ctrl+] you don't see the telnet> prompt because readline has not yet sent your input.

To kill your telnet connection, then, press Ctrl+], then q, then Enter.

Michael Hampton
  • 252,907
4

Ctrl+c, Esc, Enter, Ctrl+], Enter, q, Enter

1

ctrl + q
ctrl + ]
Enter

ctrl + q will force rlwrap to send ^] as is after you hit Enter

However, it seems the command is not reliable when used with rlwrap. See for example this bare telnet session

$ telnet
telnet> open google.fr 443
Trying 142.251.37.163...
Connected to google.fr.
Escape character is '^]'.
^]
telnet> open google.fr 80
?Already connected to google.fr
telnet> close
Connection closed.
telnet> open google.fr 443
Trying 142.251.37.163...
Connected to google.fr.
Escape character is '^]'.
^]
telnet>

And compare with rlwrap session

11:37:40 ~ -1- $ rlwrap telnet
telnet> open google.fr 443
Trying 142.251.37.163...
Connected to google.fr.
Escape character is '^]'.
^]

telnet> open google.fr 80 FConnection closed by foreign host. 11:37:52 ~ -1- $ rlwrap telnet telnet> open google.fr 443 Trying 142.251.37.163... Connected to google.fr. Escape character is '^]'. Connection closed by foreign host. 11:38:17 ~ -1- $ rlwrap telnet telnet> open google.fr 80 Trying 142.251.37.163... Connected to google.fr. Escape character is '^]'. ^]

telnet> close HTTP/1.0 400 Bad Request Content-Type: text/html; charset=UTF-8 Referrer-Policy: no-referrer Content-Length: 1555 Date: Thu, 04 Aug 2022 10:38:32 GMT

<!DOCTYPE html> <html lang=en> <meta charset=utf-8> <meta name=viewport content="initial-scale=1, minimum-scale=1, width=device-width"> <title>Error 400 (Bad Request)!!1</title> <style> {margin:0;padding:0}html,code{font:15px/22px arial,sans-serif}html{background:#fff;color:#222;padding:15px}body{margin:7% auto 0;max-width:390px;min-height:180px;padding:30px 0 15px} > body{background:url(//www.google.com/images/errors/robot.png) 100% 5px no-repeat;padding-right:205px}p{margin:11px 0 22px;overflow:hidden}ins{color:#777;text-decoration:none}a img{border:0}@media screen and (max-width:772px){body{background:none;margin-top:0;max-width:none;padding-right:0}}#logo{background:url(//www.google.com/images/branding/googlelogo/1x/googlelogo_color_150x54dp.png) no-repeat;margin-left:-5px}@media only screen and (min-resolution:192dpi){#logo{background:url(//www.google.com/images/branding/googlelogo/2x/googlelogo_color_150x54dp.png) no-repeat 0% 0%/100% 100%;-moz-border-image:url(//www.google.com/images/branding/googlelogo/2x/googlelogo_color_150x54dp.png) 0}}@media only screen and (-webkit-min-device-pixel-ratio:2){#logo{background:url(//www.google.com/images/branding/googlelogo/2x/googlelogo_color_150x54dp.png) no-repeat;-webkit-background-size:100% 100%}}#logo{display:inline-block;height:54px;width:150px} </style> <a href=//www.google.com/><span id=logo aria-label=Google></span></a> <p><b>400.</b> <ins>That’s an error.</ins> <p>Your client has issued a malformed or illegal request. <ins>That’s all we know.</ins> Connection closed by foreign host. 11:38:32 ~ -1- $

ychaouche
  • 280