diff options
| author | martin <martin@NetBSD.org> | 2019-08-16 19:12:46 +0000 |
|---|---|---|
| committer | martin <martin@NetBSD.org> | 2019-08-16 19:12:46 +0000 |
| commit | 2bc2fd54a7dbe31e533152a022b4eb25616f9a99 (patch) | |
| tree | 94004282431fb8ddd05d0e8159a4fb530e1e2f32 /libexec | |
| parent | c93902228f1e1b2ac77a32f7f38f2ddf3d348bfd (diff) | |
Pull up following revision(s) (requested by kamil in ticket #61):
libexec/telnetd/telnetd.c: revision 1.56
libexec/telnetd/sys_term.c: revision 1.49
telnetd: Stop defining the same variables concurrently in bss and data
auth_level and require_secure_login were defined in two places:
- global.c that picked it from headers and removed 'extern'
- telnetd.c that initialized it to 0
line was defined twice: in global.c and sys_term.c with a non-zero value.
Remove the definition and initialization from sys_term.c and initialize
the variable early in main().
Detected during the build of telned with Address Sanitizer (MKSANITIZER).
Reviewed by <mrg>
Diffstat (limited to 'libexec')
| -rw-r--r-- | libexec/telnetd/sys_term.c | 11 | ||||
| -rw-r--r-- | libexec/telnetd/telnetd.c | 16 |
2 files changed, 8 insertions, 19 deletions
diff --git a/libexec/telnetd/sys_term.c b/libexec/telnetd/sys_term.c index f4409524b05..e7c17be7837 100644 --- a/libexec/telnetd/sys_term.c +++ b/libexec/telnetd/sys_term.c @@ -1,4 +1,4 @@ -/* $NetBSD: sys_term.c,v 1.48 2018/12/13 04:29:18 maya Exp $ */ +/* $NetBSD: sys_term.c,v 1.48.2.1 2019/08/16 19:12:46 martin Exp $ */ /* * Copyright (c) 1989, 1993 @@ -34,7 +34,7 @@ #if 0 static char sccsid[] = "@(#)sys_term.c 8.4+1 (Berkeley) 5/30/95"; #else -__RCSID("$NetBSD: sys_term.c,v 1.48 2018/12/13 04:29:18 maya Exp $"); +__RCSID("$NetBSD: sys_term.c,v 1.48.2.1 2019/08/16 19:12:46 martin Exp $"); #endif #endif /* not lint */ @@ -177,13 +177,6 @@ spcset(int func, cc_t *valp, cc_t **valpp) * * Returns the file descriptor of the opened pty. */ -#ifndef __GNUC__ -char *line = NULL16STR; -#else -static char Xline[] = NULL16STR; -char *line = Xline; -#endif - static int ptyslavefd; /* for cleanopen() */ diff --git a/libexec/telnetd/telnetd.c b/libexec/telnetd/telnetd.c index eae43c38cca..e3bcf9dc71b 100644 --- a/libexec/telnetd/telnetd.c +++ b/libexec/telnetd/telnetd.c @@ -1,4 +1,4 @@ -/* $NetBSD: telnetd.c,v 1.55 2014/02/27 18:20:21 joerg Exp $ */ +/* $NetBSD: telnetd.c,v 1.55.28.1 2019/08/16 19:12:46 martin Exp $ */ /* * Copyright (C) 1997 and 1998 WIDE Project. @@ -65,7 +65,7 @@ __COPYRIGHT("@(#) Copyright (c) 1989, 1993\ #if 0 static char sccsid[] = "@(#)telnetd.c 8.4 (Berkeley) 5/30/95"; #else -__RCSID("$NetBSD: telnetd.c,v 1.55 2014/02/27 18:20:21 joerg Exp $"); +__RCSID("$NetBSD: telnetd.c,v 1.55.28.1 2019/08/16 19:12:46 martin Exp $"); #endif #endif /* not lint */ @@ -86,18 +86,10 @@ __RCSID("$NetBSD: telnetd.c,v 1.55 2014/02/27 18:20:21 joerg Exp $"); #include <krb5/com_err.h> #endif -#ifdef AUTHENTICATION -int auth_level = 0; -#endif - #if defined(AUTHENTICATION) || defined(ENCRYPTION) #include <libtelnet/misc.h> #endif -#ifdef SECURELOGIN -int require_secure_login = 0; -#endif - extern int require_hwpreauth; #ifdef KRB5 extern krb5_context telnet_context; @@ -164,6 +156,8 @@ struct sockaddr_storage from; int main(int argc, char *argv[]) { + static char Xline[] = NULL16STR; + socklen_t fromlen; int on = 1; int ch; @@ -171,6 +165,8 @@ main(int argc, char *argv[]) int tos = -1; #endif + line = Xline; + pfrontp = pbackp = ptyobuf; netip = netibuf; nfrontp = nbackp = netobuf; |
