usos sitios parametros navegar funciona fuente ejemplos dentro con como comandos codigo char default telnet

char - sitios - Forzar al cliente de telnet en el modo de caracteres



telnet en cmd (3)

Interesante. Tuve más suerte enviando

IAC WILL ECHO IAC WILL SUPPRESS_GO_AHEAD IAC WONT LINEMODE 255 251 1 255 251 3 255 252 34

IAC WONT LINEMODE parece ser redundante: mi cliente de telnet parece llegar al estado correcto sin él, pero lo dejé para que estuviera completo.

Tengo una aplicación en la que acepto una conexión de socket desde un cliente de telnet y presento una interfaz gráfica de usuario sencilla basada en el teclado.

El cliente de telnet, al menos en Linux, está predeterminado en el modo línea a la vez, por lo que siempre tengo que hacer ^]mode char manualmente.

Un destello de los RFC relevantes sugiere que si mi aplicación simplemente envió los caracteres IAC DONT LINEMODE (/377/376/042) tan pronto como el cliente se conecta, el cliente debe ser forzado al modo de caracteres. Sin embargo, no hace ninguna diferencia.

¿Cuál es el código más simple que haría el trabajo? Idealmente solo una cadena para ser enviada. Mi aplicación puede absorber cualquier basura que el cliente devuelva.


Por lo que vale, lo resolví yo mismo.

// IAC WONT LINEMODE IAC WILL ECHO write(s,"/377/375/042/377/373/001",6);

obtiene el control remoto (al menos Telnet de un Xterm en una caja Linux) en el estado correcto.


La solución de Kevin funciona muy bien: write(s,"/377/375/042/377/373/001",6);

Aunque el comentario es un poco incorrecto. Debe decir "DO LINEMODE", no "WONT LINEMODE", es decir: // IAC DO LINEMODE IAC WILL ECHO

(Fuente: rfc854 )