Telnet send Ctrl-C

serial portsignalstelnetterminalterminal-emulator

I use telnet to connect to a terminal server, which proxies the traffic to a RS-232 port.

Unfortunately when using some of the devices it is not possible to send the CTRL+C character (0x03). Instead of transmitting the character, it seems like the local client has catches the keystroke, and I'm left in "some-other-mode". What I wanted was just to send a character.

To debug this I have been playing around with:

^] toggle termdata

and

^] toggle options

Here is what happens when I press CTRL+C on a terminal server which does not work:

telnet 10.10.129.101 2012
Trying 10.10.129.101...
Connected to termserv-val3 (10.10.129.101).
Escape character is '^]'.
^]
telnet> toggle options
Will show option processing.
^]
telnet> toggle termdata
Will print hexadecimal representation of terminal traffic.
SENT IAC IP
SENT DO TIMING MARK

Here is what happens on terminal servers which do work:

telnet termserv-val2 2012
Trying 10.10.128.93...
Connected to termserv-val2 (10.10.128.93).
Escape character is '^]'.

telnet> toggle options
Will show option processing.

telnet> toggle termdata
Will print hexadecimal representation of terminal traffic.
< 0x0   03
^C

I have tried toggle localchars but it did not make any difference.

I have also tried mode character which allowed me to send the CTRL+C character, but here I did not get any output back from the device.

How can I configure my telnet client to solve this?

Best Answer

Have you tried turning off localchars in your telnet client?

bash$ telnet
telnet> toggle localchars
Won't recognize certain control characters.
telnet> open myhost

You may also be able to put this command in the ~/.telnetrc file, depending on your version of telnet.

Related Question