diff options
author | deraadt <> | 1996-01-15 01:10:17 +0000 |
---|---|---|
committer | deraadt <> | 1996-01-15 01:10:17 +0000 |
commit | 38b91373d0a188ae18aa6a5848d8dbc01c6c1f21 (patch) | |
tree | f2914eb57c651976e069eec8587aa28fc1f1f40a | |
parent | 1aa0e25ff71f2cf06b49c0eb931798b4bc8a608b (diff) | |
download | openbsd-38b91373d0a188ae18aa6a5848d8dbc01c6c1f21.tar.gz openbsd-38b91373d0a188ae18aa6a5848d8dbc01c6c1f21.tar.bz2 openbsd-38b91373d0a188ae18aa6a5848d8dbc01c6c1f21.zip |
from netbsd:
Don't read the network address as an alias when there isn't whitespace
after the network address. Closes PR 1940.
-rw-r--r-- | src/lib/libc/net/getnetent.c | 25 |
1 files changed, 13 insertions, 12 deletions
diff --git a/src/lib/libc/net/getnetent.c b/src/lib/libc/net/getnetent.c index b4e16b8f5d..8ecdf6c5a3 100644 --- a/src/lib/libc/net/getnetent.c +++ b/src/lib/libc/net/getnetent.c | |||
@@ -1,4 +1,4 @@ | |||
1 | /* $NetBSD: getnetent.c,v 1.4 1995/02/25 06:20:33 cgd Exp $ */ | 1 | /* $NetBSD: getnetent.c,v 1.5 1996/01/14 05:02:41 ghudson Exp $ */ |
2 | 2 | ||
3 | /* | 3 | /* |
4 | * Copyright (c) 1983, 1993 | 4 | * Copyright (c) 1983, 1993 |
@@ -37,7 +37,7 @@ | |||
37 | #if 0 | 37 | #if 0 |
38 | static char sccsid[] = "@(#)getnetent.c 8.1 (Berkeley) 6/4/93"; | 38 | static char sccsid[] = "@(#)getnetent.c 8.1 (Berkeley) 6/4/93"; |
39 | #else | 39 | #else |
40 | static char rcsid[] = "$NetBSD: getnetent.c,v 1.4 1995/02/25 06:20:33 cgd Exp $"; | 40 | static char rcsid[] = "$NetBSD: getnetent.c,v 1.5 1996/01/14 05:02:41 ghudson Exp $"; |
41 | #endif | 41 | #endif |
42 | #endif /* LIBC_SCCS and not lint */ | 42 | #endif /* LIBC_SCCS and not lint */ |
43 | 43 | ||
@@ -109,18 +109,19 @@ again: | |||
109 | net.n_net = inet_network(cp); | 109 | net.n_net = inet_network(cp); |
110 | net.n_addrtype = AF_INET; | 110 | net.n_addrtype = AF_INET; |
111 | q = net.n_aliases = net_aliases; | 111 | q = net.n_aliases = net_aliases; |
112 | if (p != NULL) | 112 | if (p != NULL) { |
113 | cp = p; | 113 | cp = p; |
114 | while (cp && *cp) { | 114 | while (cp && *cp) { |
115 | if (*cp == ' ' || *cp == '\t') { | 115 | if (*cp == ' ' || *cp == '\t') { |
116 | cp++; | 116 | cp++; |
117 | continue; | 117 | continue; |
118 | } | ||
119 | if (q < &net_aliases[MAXALIASES - 1]) | ||
120 | *q++ = cp; | ||
121 | cp = strpbrk(cp, " \t"); | ||
122 | if (cp != NULL) | ||
123 | *cp++ = '\0'; | ||
118 | } | 124 | } |
119 | if (q < &net_aliases[MAXALIASES - 1]) | ||
120 | *q++ = cp; | ||
121 | cp = strpbrk(cp, " \t"); | ||
122 | if (cp != NULL) | ||
123 | *cp++ = '\0'; | ||
124 | } | 125 | } |
125 | *q = NULL; | 126 | *q = NULL; |
126 | return (&net); | 127 | return (&net); |