X-Git-Url: https://git.subgeniuskitty.com/unix-history/.git/blobdiff_plain/9243aabf10407e72df473519a667ad32567336b4..d20a1e6fa210a3750c6b4acbd23e7a3a52a45390:/usr/src/lib/libc/net/getnetent.c diff --git a/usr/src/lib/libc/net/getnetent.c b/usr/src/lib/libc/net/getnetent.c index 61c2c9a609..3784614c7c 100644 --- a/usr/src/lib/libc/net/getnetent.c +++ b/usr/src/lib/libc/net/getnetent.c @@ -1,18 +1,38 @@ -/* getnetent.c 4.5 82/11/14 */ +/* + * Copyright (c) 1983 Regents of the University of California. + * All rights reserved. + * + * Redistribution and use in source and binary forms are permitted + * provided that the above copyright notice and this paragraph are + * duplicated in all such forms and that any documentation, + * advertising materials, and other materials related to such + * distribution and use acknowledge that the software was developed + * by the University of California, Berkeley. The name of the + * University may not be used to endorse or promote products derived + * from this software without specific prior written permission. + * THIS SOFTWARE IS PROVIDED ``AS IS'' AND WITHOUT ANY EXPRESS OR + * IMPLIED WARRANTIES, INCLUDING, WITHOUT LIMITATION, THE IMPLIED + * WARRANTIES OF MERCHANTIBILITY AND FITNESS FOR A PARTICULAR PURPOSE. + */ + +#if defined(LIBC_SCCS) && !defined(lint) +static char sccsid[] = "@(#)getnetent.c 5.5 (Berkeley) %G%"; +#endif /* LIBC_SCCS and not lint */ #include +#include #include #include #include #define MAXALIASES 35 -static char *NETDB = "/usr/lib/networks"; +static char NETDB[] = "/etc/networks"; static FILE *netf = NULL; static char line[BUFSIZ+1]; static struct netent net; static char *net_aliases[MAXALIASES]; -static int stayopen = 0; +int _net_stayopen; static char *any(); setnetent(f) @@ -22,15 +42,16 @@ setnetent(f) netf = fopen(NETDB, "r" ); else rewind(netf); - stayopen |= f; + _net_stayopen |= f; } endnetent() { - if (netf && !stayopen) { + if (netf) { fclose(netf); netf = NULL; } + _net_stayopen = 0; } struct netent * @@ -64,19 +85,18 @@ again: net.n_net = inet_network(cp); net.n_addrtype = AF_INET; q = net.n_aliases = net_aliases; - if (p != NULL) { + if (p != NULL) cp = p; - while (*cp) { - if (*cp == ' ' || *cp == '\t') { - cp++; - continue; - } - if (q < &net_aliases[MAXALIASES - 1]) - *q++ = cp; - cp = any(cp, " \t"); - if (*cp != NULL) - *cp++ = '\0'; + while (cp && *cp) { + if (*cp == ' ' || *cp == '\t') { + cp++; + continue; } + if (q < &net_aliases[MAXALIASES - 1]) + *q++ = cp; + cp = any(cp, " \t"); + if (cp != NULL) + *cp++ = '\0'; } *q = NULL; return (&net);