Telnet and carriage return.

Ralf Friedl Ralf.Friedl at online.de
Thu Sep 13 12:55:28 UTC 2012


Denys Vlasenko wrote:
> Changed it to this in git:
>
>                 else if (c == '\r')
> -                       outbuf[j++] = '\0'; /* CR -> CR NUL */
> +                       /* See RFC 1123 3.3.1 Telnet End-of-Line Convention.
> +                        * Using CR LF instead of other allowed possibilities
> +                        * like CR NUL - easier to talk to HTTP/SMTP servers.
> +                        */
> +                       outbuf[j++] = '\n'; /* CR -> CR LF */
>   
This sends a CR-LF End-of-Line, but as a response to Ctrl-M. In line 
mode the telnet client reads Ctrl-J or LF when the user presses enter.
The right thing to do would be to revert this change and to add
+  else if (c == '\n' && G.charmode != CHM_ON) {
+    outbuf[j] = '\r'; /* LF -> CR LF */
+    outbuf[j++] = '\n';
+  }




More information about the busybox mailing list