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>
This commit is contained in:
parent
4cfa5c766e
commit
d9a1e5d37f
@ -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.49 2019/08/15 01:15:21 kamil Exp $ */
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* Copyright (c) 1989, 1993
|
* Copyright (c) 1989, 1993
|
||||||
@ -34,7 +34,7 @@
|
|||||||
#if 0
|
#if 0
|
||||||
static char sccsid[] = "@(#)sys_term.c 8.4+1 (Berkeley) 5/30/95";
|
static char sccsid[] = "@(#)sys_term.c 8.4+1 (Berkeley) 5/30/95";
|
||||||
#else
|
#else
|
||||||
__RCSID("$NetBSD: sys_term.c,v 1.48 2018/12/13 04:29:18 maya Exp $");
|
__RCSID("$NetBSD: sys_term.c,v 1.49 2019/08/15 01:15:21 kamil Exp $");
|
||||||
#endif
|
#endif
|
||||||
#endif /* not lint */
|
#endif /* not lint */
|
||||||
|
|
||||||
@ -177,13 +177,6 @@ spcset(int func, cc_t *valp, cc_t **valpp)
|
|||||||
*
|
*
|
||||||
* Returns the file descriptor of the opened pty.
|
* 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() */
|
static int ptyslavefd; /* for cleanopen() */
|
||||||
|
|
||||||
|
@ -1,4 +1,4 @@
|
|||||||
/* $NetBSD: telnetd.c,v 1.55 2014/02/27 18:20:21 joerg Exp $ */
|
/* $NetBSD: telnetd.c,v 1.56 2019/08/15 01:15:21 kamil Exp $ */
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* Copyright (C) 1997 and 1998 WIDE Project.
|
* Copyright (C) 1997 and 1998 WIDE Project.
|
||||||
@ -65,7 +65,7 @@ __COPYRIGHT("@(#) Copyright (c) 1989, 1993\
|
|||||||
#if 0
|
#if 0
|
||||||
static char sccsid[] = "@(#)telnetd.c 8.4 (Berkeley) 5/30/95";
|
static char sccsid[] = "@(#)telnetd.c 8.4 (Berkeley) 5/30/95";
|
||||||
#else
|
#else
|
||||||
__RCSID("$NetBSD: telnetd.c,v 1.55 2014/02/27 18:20:21 joerg Exp $");
|
__RCSID("$NetBSD: telnetd.c,v 1.56 2019/08/15 01:15:21 kamil Exp $");
|
||||||
#endif
|
#endif
|
||||||
#endif /* not lint */
|
#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>
|
#include <krb5/com_err.h>
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
#ifdef AUTHENTICATION
|
|
||||||
int auth_level = 0;
|
|
||||||
#endif
|
|
||||||
|
|
||||||
#if defined(AUTHENTICATION) || defined(ENCRYPTION)
|
#if defined(AUTHENTICATION) || defined(ENCRYPTION)
|
||||||
#include <libtelnet/misc.h>
|
#include <libtelnet/misc.h>
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
#ifdef SECURELOGIN
|
|
||||||
int require_secure_login = 0;
|
|
||||||
#endif
|
|
||||||
|
|
||||||
extern int require_hwpreauth;
|
extern int require_hwpreauth;
|
||||||
#ifdef KRB5
|
#ifdef KRB5
|
||||||
extern krb5_context telnet_context;
|
extern krb5_context telnet_context;
|
||||||
@ -164,6 +156,8 @@ struct sockaddr_storage from;
|
|||||||
int
|
int
|
||||||
main(int argc, char *argv[])
|
main(int argc, char *argv[])
|
||||||
{
|
{
|
||||||
|
static char Xline[] = NULL16STR;
|
||||||
|
|
||||||
socklen_t fromlen;
|
socklen_t fromlen;
|
||||||
int on = 1;
|
int on = 1;
|
||||||
int ch;
|
int ch;
|
||||||
@ -171,6 +165,8 @@ main(int argc, char *argv[])
|
|||||||
int tos = -1;
|
int tos = -1;
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
line = Xline;
|
||||||
|
|
||||||
pfrontp = pbackp = ptyobuf;
|
pfrontp = pbackp = ptyobuf;
|
||||||
netip = netibuf;
|
netip = netibuf;
|
||||||
nfrontp = nbackp = netobuf;
|
nfrontp = nbackp = netobuf;
|
||||||
|
Loading…
Reference in New Issue
Block a user