On Thu, Apr 4, 2019 at 1:33 PM Martin Lewis <martin.lewis....@gmail.com> wrote:
>
> Fixed a TODO in AYT IAC handling by replying back with a NOP.
>
> Signed-off-by: Martin Lewis <martin.lewis....@gmail.com>
> ---
>  networking/telnetd.c | 8 +++++++-
>  1 file changed, 7 insertions(+), 1 deletion(-)
>
> diff --git a/networking/telnetd.c b/networking/telnetd.c
> index caef151..c6fe815 100644
> --- a/networking/telnetd.c
> +++ b/networking/telnetd.c
> @@ -249,7 +249,7 @@ safe_write_to_pty_decode_iac(struct tsession *ts)
>          * IAC SE  (240) End of subnegotiation. Treated as NOP.
>          * IAC NOP (241) NOP. Supported.
>          * IAC BRK (243) Break. Like serial line break. TODO via 
> tcsendbreak()?
> -        * IAC AYT (246) Are you there. Send back evidence that AYT was seen. 
> TODO (send NOP back)?
> +        * IAC AYT (246) Are you there.
>          *  These don't look useful:
>          * IAC DM  (242) Data mark. What is this?
>          * IAC IP  (244) Suspend, interrupt or abort the process. (Ancient 
> cousin of ^C).
> @@ -277,6 +277,12 @@ safe_write_to_pty_decode_iac(struct tsession *ts)
>                 rc = 2;
>                 goto update_and_return;
>         }
> +       if (buf[1] == AYT) {
> +               /* Send back evidence that AYT was seen. */
> +               buf[1] = NOP;
> +               rc = safe_write(ts->sockfd_write, buf, 2);
> +               goto update_and_return;

what if rc == -1 now?

> +       }
>         if (buf[1] >= 240 && buf[1] <= 249) {
>                 /* NOP (241). Ignore (putty keepalive, etc) */
>                 /* All other 2-byte commands also treated as NOPs here */
> --
> 1.9.1
>
> _______________________________________________
> busybox mailing list
> busybox@busybox.net
> http://lists.busybox.net/mailman/listinfo/busybox
_______________________________________________
busybox mailing list
busybox@busybox.net
http://lists.busybox.net/mailman/listinfo/busybox

Reply via email to