Source-Changes-HG archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

[src/trunk]: src/libexec/telnetd telnetd: fix the crash that's been talked ab...



details:   https://anonhg.NetBSD.org/src/rev/6a3f5845da14
branches:  trunk
changeset: 369643:6a3f5845da14
user:      dholland <dholland%NetBSD.org@localhost>
date:      Fri Aug 26 19:30:44 2022 +0000

description:
telnetd: fix the crash that's been talked about the past couple days.

(Move initialization of the slc table earlier so it doesn't get
accessed before that happens.)

Calling the crash a DoS or security problem is a bit overwrought; it's
just a bug.

diffstat:

 libexec/telnetd/telnetd.c |  14 +++++++-------
 1 files changed, 7 insertions(+), 7 deletions(-)

diffs (42 lines):

diff -r 6e39c29d22d0 -r 6a3f5845da14 libexec/telnetd/telnetd.c
--- a/libexec/telnetd/telnetd.c Fri Aug 26 19:18:38 2022 +0000
+++ b/libexec/telnetd/telnetd.c Fri Aug 26 19:30:44 2022 +0000
@@ -1,4 +1,4 @@
-/*     $NetBSD: telnetd.c,v 1.57 2021/12/08 20:21:09 andvar Exp $      */
+/*     $NetBSD: telnetd.c,v 1.58 2022/08/26 19:30:44 dholland Exp $    */
 
 /*
  * Copyright (C) 1997 and 1998 WIDE Project.
@@ -65,7 +65,7 @@
 #if 0
 static char sccsid[] = "@(#)telnetd.c  8.4 (Berkeley) 5/30/95";
 #else
-__RCSID("$NetBSD: telnetd.c,v 1.57 2021/12/08 20:21:09 andvar Exp $");
+__RCSID("$NetBSD: telnetd.c,v 1.58 2022/08/26 19:30:44 dholland Exp $");
 #endif
 #endif /* not lint */
 
@@ -678,6 +678,11 @@
        char user_name[256];
 
        /*
+        * Initialize the slc mapping table.
+        */
+       get_slc_defaults();
+
+       /*
         * Find an available pty to use.
         */
        pty = getpty(&ptynum);
@@ -744,11 +749,6 @@
        struct pollfd set[2];
 
        /*
-        * Initialize the slc mapping table.
-        */
-       get_slc_defaults();
-
-       /*
         * Do some tests where it is desirable to wait for a response.
         * Rather than doing them slowly, one at a time, do them all
         * at once.



Home | Main Index | Thread Index | Old Index