Force telnet client into character mode
Solution 1:
Interesting. I had more luck sending
IAC WILL ECHO IAC WILL SUPPRESS_GO_AHEAD IAC WONT LINEMODE
255 251 1 255 251 3 255 252 34
The IAC WONT LINEMODE seems to be redundant: my telnet client seems to get to the right state without it, but I left it in for completeness.
Solution 2:
For what it's worth, solved it myself.
// IAC WONT LINEMODE IAC WILL ECHO
write(s,"\377\375\042\377\373\001",6);
gets the remote (at least telnet from an Xterm on a Linux box) into the right state.