Module Name: src
Committed By: dholland
Date: Sun Aug 11 05:42:41 UTC 2013
Modified Files:
src/libexec/getty: Makefile extern.h gettytab.h init.c main.c subr.c
Log Message:
Pass WARNS=5.
To generate a diff of this commit:
cvs rdiff -u -r1.19 -r1.20 src/libexec/getty/Makefile
cvs rdiff -u -r1.6 -r1.7 src/libexec/getty/extern.h
cvs rdiff -u -r1.16 -r1.17 src/libexec/getty/gettytab.h
cvs rdiff -u -r1.17 -r1.18 src/libexec/getty/init.c
cvs rdiff -u -r1.60 -r1.61 src/libexec/getty/main.c
cvs rdiff -u -r1.33 -r1.34 src/libexec/getty/subr.c
Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.
Modified files:
Index: src/libexec/getty/Makefile
diff -u src/libexec/getty/Makefile:1.19 src/libexec/getty/Makefile:1.20
--- src/libexec/getty/Makefile:1.19 Wed Feb 3 15:34:43 2010
+++ src/libexec/getty/Makefile Sun Aug 11 05:42:41 2013
@@ -1,8 +1,6 @@
-# $NetBSD: Makefile,v 1.19 2010/02/03 15:34:43 roy Exp $
+# $NetBSD: Makefile,v 1.20 2013/08/11 05:42:41 dholland Exp $
# from: @(#)Makefile 8.1 (Berkeley) 6/4/93
-WARNS?= 2 # XXX: many const & sign-compare issues
-
PROG= getty
SRCS= main.c init.c subr.c
DPADD+= ${LIBUTIL} ${LIBTERMINFO}
Index: src/libexec/getty/extern.h
diff -u src/libexec/getty/extern.h:1.6 src/libexec/getty/extern.h:1.7
--- src/libexec/getty/extern.h:1.6 Thu Aug 7 09:46:41 2003
+++ src/libexec/getty/extern.h Sun Aug 11 05:42:41 2013
@@ -1,4 +1,4 @@
-/* $NetBSD: extern.h,v 1.6 2003/08/07 09:46:41 agc Exp $ */
+/* $NetBSD: extern.h,v 1.7 2013/08/11 05:42:41 dholland Exp $ */
/*
* Copyright (c) 1993
@@ -34,17 +34,17 @@
struct delayval;
int adelay(int, struct delayval *);
-char *autobaud(void);
+const char *autobaud(void);
int delaybits(void);
-void edithost(char *);
+void edithost(const char *);
void gendefaults(void);
int getent(char *, char *);
int getflag(char *);
long getnum(char *);
char *getstr(char *, char **);
-void gettable(char *, char *);
+void gettable(const char *, char *);
void makeenv(char *[]);
-char *portselector(void);
+const char *portselector(void);
void set_ttydefaults(int);
void setchars(void);
void setdefaults(void);
Index: src/libexec/getty/gettytab.h
diff -u src/libexec/getty/gettytab.h:1.16 src/libexec/getty/gettytab.h:1.17
--- src/libexec/getty/gettytab.h:1.16 Thu Nov 16 04:31:24 2006
+++ src/libexec/getty/gettytab.h Sun Aug 11 05:42:41 2013
@@ -1,4 +1,4 @@
-/* $NetBSD: gettytab.h,v 1.16 2006/11/16 04:31:24 christos Exp $ */
+/* $NetBSD: gettytab.h,v 1.17 2013/08/11 05:42:41 dholland Exp $ */
/*
* Copyright (c) 1983, 1993, 1994
@@ -35,20 +35,20 @@
* Getty description definitions.
*/
struct gettystrs {
- char *field; /* name to lookup in gettytab */
- char *defalt; /* value we find by looking in defaults */
+ const char *field; /* name to lookup in gettytab */
+ const char *defalt; /* value we find by looking in defaults */
char *value; /* value that we find there */
};
struct gettynums {
- char *field; /* name to lookup */
+ const char *field; /* name to lookup */
long defalt; /* number we find in defaults */
long value; /* number we find there */
int set; /* we actually got this one */
};
struct gettyflags {
- char *field; /* name to lookup */
+ const char *field; /* name to lookup */
char invrt; /* name existing in gettytab --> false */
char defalt; /* true/false in defaults */
char value; /* true/false flag */
Index: src/libexec/getty/init.c
diff -u src/libexec/getty/init.c:1.17 src/libexec/getty/init.c:1.18
--- src/libexec/getty/init.c:1.17 Mon Dec 3 09:54:24 2007
+++ src/libexec/getty/init.c Sun Aug 11 05:42:41 2013
@@ -1,4 +1,4 @@
-/* $NetBSD: init.c,v 1.17 2007/12/03 09:54:24 isaki Exp $ */
+/* $NetBSD: init.c,v 1.18 2013/08/11 05:42:41 dholland Exp $ */
/*
* Copyright (c) 1983, 1993
@@ -34,7 +34,7 @@
#if 0
static char sccsid[] = "from: @(#)init.c 8.1 (Berkeley) 6/4/93";
#else
-__RCSID("$NetBSD: init.c,v 1.17 2007/12/03 09:54:24 isaki Exp $");
+__RCSID("$NetBSD: init.c,v 1.18 2013/08/11 05:42:41 dholland Exp $");
#endif
#endif /* not lint */
@@ -44,6 +44,7 @@ __RCSID("$NetBSD: init.c,v 1.17 2007/12/
* Melbourne getty.
*/
+#include <stddef.h>
#include <termios.h>
#include "gettytab.h"
@@ -55,92 +56,92 @@ extern char hostname[];
#define M(a) ((char *)&tmode.c_cc[a])
struct gettystrs gettystrs[] = {
- { "nx" }, /* next table */
- { "cl" }, /* screen clear characters */
- { "im" }, /* initial message */
- { "lm", "login: " }, /* login message */
- { "er", M(VERASE) }, /* erase character */
- { "kl", M(VKILL) }, /* kill character */
- { "et", M(VEOF) }, /* eof chatacter (eot) */
- { "pc", "" }, /* pad character */
- { "tt" }, /* terminal type */
- { "ev" }, /* environment */
- { "lo", _PATH_LOGIN }, /* login program */
- { "hn", hostname }, /* host name */
- { "he" }, /* host name edit */
- { "in", M(VINTR) }, /* interrupt char */
- { "qu", M(VQUIT) }, /* quit char */
- { "xn", M(VSTART) }, /* XON (start) char */
- { "xf", M(VSTOP) }, /* XOFF (stop) char */
- { "bk", M(VEOL) }, /* brk char (alt \n) */
- { "su", M(VSUSP) }, /* suspend char */
- { "ds", M(VDSUSP) }, /* delayed suspend */
- { "rp", M(VREPRINT) }, /* reprint char */
- { "fl", M(VDISCARD) }, /* flush output */
- { "we", M(VWERASE) }, /* word erase */
- { "ln", M(VLNEXT) }, /* literal next */
- { "st", M(VSTATUS) }, /* status */
- { "b2", M(VEOL2) }, /* alt brk char */
- { "pp" }, /* ppp login program */
- { "if" }, /* sysv-like 'issue' filename */
- { "al" }, /* user to auto-login */
- { 0 }
+ { "nx", NULL, NULL }, /* next table */
+ { "cl", NULL, NULL }, /* screen clear characters */
+ { "im", NULL, NULL }, /* initial message */
+ { "lm", "login: ", NULL }, /* login message */
+ { "er", M(VERASE), NULL }, /* erase character */
+ { "kl", M(VKILL), NULL }, /* kill character */
+ { "et", M(VEOF), NULL }, /* eof chatacter (eot) */
+ { "pc", "", NULL }, /* pad character */
+ { "tt", NULL, NULL }, /* terminal type */
+ { "ev", NULL, NULL }, /* environment */
+ { "lo", _PATH_LOGIN, NULL }, /* login program */
+ { "hn", hostname, NULL }, /* host name */
+ { "he", NULL, NULL }, /* host name edit */
+ { "in", M(VINTR), NULL }, /* interrupt char */
+ { "qu", M(VQUIT), NULL }, /* quit char */
+ { "xn", M(VSTART), NULL }, /* XON (start) char */
+ { "xf", M(VSTOP), NULL }, /* XOFF (stop) char */
+ { "bk", M(VEOL), NULL }, /* brk char (alt \n) */
+ { "su", M(VSUSP), NULL }, /* suspend char */
+ { "ds", M(VDSUSP), NULL }, /* delayed suspend */
+ { "rp", M(VREPRINT), NULL }, /* reprint char */
+ { "fl", M(VDISCARD), NULL }, /* flush output */
+ { "we", M(VWERASE), NULL }, /* word erase */
+ { "ln", M(VLNEXT), NULL }, /* literal next */
+ { "st", M(VSTATUS), NULL }, /* status */
+ { "b2", M(VEOL2), NULL }, /* alt brk char */
+ { "pp", NULL, NULL }, /* ppp login program */
+ { "if", NULL, NULL }, /* sysv-like 'issue' filename */
+ { "al", NULL, NULL }, /* user to auto-login */
+ { NULL, NULL, NULL }
};
struct gettynums gettynums[] = {
- { "is" }, /* input speed */
- { "os" }, /* output speed */
- { "sp" }, /* both speeds */
- { "nd" }, /* newline delay */
- { "cd" }, /* carriage-return delay */
- { "td" }, /* tab delay */
- { "fd" }, /* form-feed delay */
- { "bd" }, /* backspace delay */
- { "to" }, /* timeout */
- { "f0" }, /* output flags */
- { "f1" }, /* input flags */
- { "f2" }, /* user mode flags */
- { "pf" }, /* delay before flush at 1st prompt */
- { "c0" }, /* output c_flags */
- { "c1" }, /* input c_flags */
- { "c2" }, /* user mode c_flags */
- { "i0" }, /* output i_flags */
- { "i1" }, /* input i_flags */
- { "i2" }, /* user mode i_flags */
- { "l0" }, /* output l_flags */
- { "l1" }, /* input l_flags */
- { "l2" }, /* user mode l_flags */
- { "o0" }, /* output o_flags */
- { "o1" }, /* input o_flags */
- { "o2" }, /* user mode o_flags */
- { 0 }
+ { "is", 0,0,0 }, /* input speed */
+ { "os", 0,0,0 }, /* output speed */
+ { "sp", 0,0,0 }, /* both speeds */
+ { "nd", 0,0,0 }, /* newline delay */
+ { "cd", 0,0,0 }, /* carriage-return delay */
+ { "td", 0,0,0 }, /* tab delay */
+ { "fd", 0,0,0 }, /* form-feed delay */
+ { "bd", 0,0,0 }, /* backspace delay */
+ { "to", 0,0,0 }, /* timeout */
+ { "f0", 0,0,0 }, /* output flags */
+ { "f1", 0,0,0 }, /* input flags */
+ { "f2", 0,0,0 }, /* user mode flags */
+ { "pf", 0,0,0 }, /* delay before flush at 1st prompt */
+ { "c0", 0,0,0 }, /* output c_flags */
+ { "c1", 0,0,0 }, /* input c_flags */
+ { "c2", 0,0,0 }, /* user mode c_flags */
+ { "i0", 0,0,0 }, /* output i_flags */
+ { "i1", 0,0,0 }, /* input i_flags */
+ { "i2", 0,0,0 }, /* user mode i_flags */
+ { "l0", 0,0,0 }, /* output l_flags */
+ { "l1", 0,0,0 }, /* input l_flags */
+ { "l2", 0,0,0 }, /* user mode l_flags */
+ { "o0", 0,0,0 }, /* output o_flags */
+ { "o1", 0,0,0 }, /* input o_flags */
+ { "o2", 0,0,0 }, /* user mode o_flags */
+ { 0,0,0,0 }
};
struct gettyflags gettyflags[] = {
- { "ht", 0 }, /* has tabs */
- { "nl", 1 }, /* has newline char */
- { "ep", 0 }, /* even parity */
- { "op", 0 }, /* odd parity */
- { "ap", 0 }, /* any parity */
- { "ec", 1 }, /* no echo */
- { "co", 0 }, /* console special */
- { "cb", 0 }, /* crt backspace */
- { "ck", 0 }, /* crt kill */
- { "ce", 0 }, /* crt erase */
- { "pe", 0 }, /* printer erase */
- { "rw", 1 }, /* don't use raw */
- { "xc", 1 }, /* don't ^X ctl chars */
- { "lc", 0 }, /* terminal las lower case */
- { "uc", 0 }, /* terminal has no lower case */
- { "ig", 0 }, /* ignore garbage */
- { "ps", 0 }, /* do port selector speed select */
- { "hc", 1 }, /* don't set hangup on close */
- { "ub", 0 }, /* unbuffered output */
- { "ab", 0 }, /* auto-baud detect with '\r' */
- { "dx", 0 }, /* set decctlq */
- { "np", 0 }, /* no parity at all (8bit chars) */
- { "mb", 0 }, /* do MDMBUF flow control */
- { "cs", 0 }, /* clear screen based on term type */
- { "nn", 0 }, /* don't prompt for login name */
- { 0 }
+ { "ht", 0, 0,0,0 }, /* has tabs */
+ { "nl", 1, 0,0,0 }, /* has newline char */
+ { "ep", 0, 0,0,0 }, /* even parity */
+ { "op", 0, 0,0,0 }, /* odd parity */
+ { "ap", 0, 0,0,0 }, /* any parity */
+ { "ec", 1, 0,0,0 }, /* no echo */
+ { "co", 0, 0,0,0 }, /* console special */
+ { "cb", 0, 0,0,0 }, /* crt backspace */
+ { "ck", 0, 0,0,0 }, /* crt kill */
+ { "ce", 0, 0,0,0 }, /* crt erase */
+ { "pe", 0, 0,0,0 }, /* printer erase */
+ { "rw", 1, 0,0,0 }, /* don't use raw */
+ { "xc", 1, 0,0,0 }, /* don't ^X ctl chars */
+ { "lc", 0, 0,0,0 }, /* terminal las lower case */
+ { "uc", 0, 0,0,0 }, /* terminal has no lower case */
+ { "ig", 0, 0,0,0 }, /* ignore garbage */
+ { "ps", 0, 0,0,0 }, /* do port selector speed select */
+ { "hc", 1, 0,0,0 }, /* don't set hangup on close */
+ { "ub", 0, 0,0,0 }, /* unbuffered output */
+ { "ab", 0, 0,0,0 }, /* auto-baud detect with '\r' */
+ { "dx", 0, 0,0,0 }, /* set decctlq */
+ { "np", 0, 0,0,0 }, /* no parity at all (8bit chars) */
+ { "mb", 0, 0,0,0 }, /* do MDMBUF flow control */
+ { "cs", 0, 0,0,0 }, /* clear screen based on term type */
+ { "nn", 0, 0,0,0 }, /* don't prompt for login name */
+ { NULL,0,0,0,0 }
};
Index: src/libexec/getty/main.c
diff -u src/libexec/getty/main.c:1.60 src/libexec/getty/main.c:1.61
--- src/libexec/getty/main.c:1.60 Sun Nov 4 21:14:59 2012
+++ src/libexec/getty/main.c Sun Aug 11 05:42:41 2013
@@ -1,4 +1,4 @@
-/* $NetBSD: main.c,v 1.60 2012/11/04 21:14:59 christos Exp $ */
+/* $NetBSD: main.c,v 1.61 2013/08/11 05:42:41 dholland Exp $ */
/*-
* Copyright (c) 1980, 1993
@@ -40,7 +40,7 @@ __COPYRIGHT("@(#) Copyright (c) 1980, 19
#if 0
static char sccsid[] = "from: @(#)main.c 8.1 (Berkeley) 6/20/93";
#else
-__RCSID("$NetBSD: main.c,v 1.60 2012/11/04 21:14:59 christos Exp $");
+__RCSID("$NetBSD: main.c,v 1.61 2013/08/11 05:42:41 dholland Exp $");
#endif
#endif /* not lint */
@@ -183,11 +183,13 @@ int
main(int argc, char *argv[], char *envp[])
{
const char *progname;
- char *tname;
- int repcnt = 0, failopenlogged = 0, uugetty = 0, first_time = 1;
+ const char *tname;
+ int repcnt = 0, failopenlogged = 0, first_time = 1;
struct rlimit limit;
struct passwd *pw;
int rval;
+ /* gcc 4.5 claims longjmp can clobber this, but I don't see how */
+ volatile int uugetty = 0;
(void)signal(SIGINT, SIG_IGN);
openlog("getty", LOG_PID, LOG_AUTH);
Index: src/libexec/getty/subr.c
diff -u src/libexec/getty/subr.c:1.33 src/libexec/getty/subr.c:1.34
--- src/libexec/getty/subr.c:1.33 Thu Nov 16 04:31:24 2006
+++ src/libexec/getty/subr.c Sun Aug 11 05:42:41 2013
@@ -1,4 +1,4 @@
-/* $NetBSD: subr.c,v 1.33 2006/11/16 04:31:24 christos Exp $ */
+/* $NetBSD: subr.c,v 1.34 2013/08/11 05:42:41 dholland Exp $ */
/*
* Copyright (c) 1983, 1993
@@ -34,7 +34,7 @@
#if 0
static char sccsid[] = "from: @(#)subr.c 8.1 (Berkeley) 6/4/93";
#else
-__RCSID("$NetBSD: subr.c,v 1.33 2006/11/16 04:31:24 christos Exp $");
+__RCSID("$NetBSD: subr.c,v 1.34 2013/08/11 05:42:41 dholland Exp $");
#endif
#endif /* not lint */
@@ -50,6 +50,7 @@ __RCSID("$NetBSD: subr.c,v 1.33 2006/11/
#include <termios.h>
#include <unistd.h>
#include <poll.h>
+#include <util.h>
#include "extern.h"
#include "gettytab.h"
@@ -63,7 +64,7 @@ static void compatflags(long);
* Get a table entry.
*/
void
-gettable(char *name, char *buf)
+gettable(const char *name, char *buf)
{
struct gettystrs *sp;
struct gettynums *np;
@@ -71,7 +72,7 @@ gettable(char *name, char *buf)
long n;
const char *dba[2];
dba[0] = _PATH_GETTYTAB;
- dba[1] = 0;
+ dba[1] = NULL;
if (cgetent(&buf, dba, name) != 0)
return;
@@ -136,7 +137,7 @@ setdefaults(void)
for (sp = gettystrs; sp->field; sp++)
if (!sp->value)
- sp->value = sp->defalt;
+ sp->value = estrdup(sp->defalt);
for (np = gettynums; np->field; np++)
if (!np->set)
np->value = np->defalt;
@@ -556,7 +557,7 @@ adelay(int ms, struct delayval *dp)
char editedhost[MAXHOSTNAMELEN];
void
-edithost(char *pat)
+edithost(const char *pat)
{
char *host = HN;
char *res = editedhost;
@@ -627,8 +628,8 @@ makeenv(char *env[])
* The routine below returns the terminal type mapped from derived speed.
*/
struct portselect {
- char *ps_baud;
- char *ps_type;
+ const char *ps_baud;
+ const char *ps_type;
} portspeeds[] = {
{ "B110", "std.110" },
{ "B134", "std.134" },
@@ -640,15 +641,16 @@ struct portselect {
{ "B4800", "std.4800" },
{ "B9600", "std.9600" },
{ "B19200", "std.19200" },
- { 0 }
+ { NULL, NULL }
};
-char *
+const char *
portselector(void)
{
- char c, baud[20], *type = "default";
+ char c, baud[20];
+ const char *type = "default";
struct portselect *ps;
- int len;
+ size_t len;
(void)alarm(5*60);
for (len = 0; len < sizeof (baud) - 1; len++) {
@@ -678,12 +680,13 @@ portselector(void)
*/
#include <sys/time.h>
-char *
+const char *
autobaud(void)
{
struct pollfd set[1];
struct timespec timeout;
- char c, *type = "9600-baud";
+ char c;
+ const char *type = "9600-baud";
(void)tcflush(0, TCIOFLUSH);
set[0].fd = STDIN_FILENO;