summaryrefslogtreecommitdiff
path: root/libexec
diff options
context:
space:
mode:
authordrochner <drochner@NetBSD.org>1999-12-15 17:41:48 +0000
committerdrochner <drochner@NetBSD.org>1999-12-15 17:41:48 +0000
commitd46a0af8c347303bf2b5156ffd49bf3e02c131ea (patch)
tree9afe252475b1b788c37d4018b7a71f9fec735215 /libexec
parent2ab76be062f63b6fbc4b6b32c288ec166bbec71e (diff)
add one byte to the username character array and make sure the string
passed to "login" is '\0'-terminated
Diffstat (limited to 'libexec')
-rw-r--r--libexec/getty/main.c10
1 files changed, 6 insertions, 4 deletions
diff --git a/libexec/getty/main.c b/libexec/getty/main.c
index 70972da62df..e22564707b0 100644
--- a/libexec/getty/main.c
+++ b/libexec/getty/main.c
@@ -1,4 +1,4 @@
-/* $NetBSD: main.c,v 1.28 1999/01/15 23:44:32 kml Exp $ */
+/* $NetBSD: main.c,v 1.29 1999/12/15 17:41:48 drochner Exp $ */
/*-
* Copyright (c) 1980, 1993
@@ -44,7 +44,7 @@ __COPYRIGHT("@(#) Copyright (c) 1980, 1993\n\
#if 0
static char sccsid[] = "from: @(#)main.c 8.1 (Berkeley) 6/20/93";
#else
-__RCSID("$NetBSD: main.c,v 1.28 1999/01/15 23:44:32 kml Exp $");
+__RCSID("$NetBSD: main.c,v 1.29 1999/12/15 17:41:48 drochner Exp $");
#endif
#endif /* not lint */
@@ -98,7 +98,7 @@ int crmod, digit, lower, upper;
char hostname[MAXHOSTNAMELEN + 1];
struct utsname kerninfo;
-char name[16];
+char name[LOGIN_NAME_MAX];
char dev[] = _PATH_DEV;
char ttyn[32];
char lockfile[512];
@@ -465,7 +465,9 @@ getname()
if (c == EOT)
exit(1);
- if (c == '\r' || c == '\n' || np >= &name[sizeof name]) {
+ if (c == '\r' || c == '\n' ||
+ np >= &name[LOGIN_NAME_MAX - 1]) {
+ *np = '\0';
putf("\r\n");
break;
}