document conditions wherein ruserok will fail
[unix-history] / usr / src / lib / libc / net / getnetent.c
index 61c2c9a..3784614 100644 (file)
@@ -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 <stdio.h>
 
 #include <stdio.h>
+#include <sys/types.h>
 #include <sys/socket.h>
 #include <netdb.h>
 #include <ctype.h>
 
 #define        MAXALIASES      35
 
 #include <sys/socket.h>
 #include <netdb.h>
 #include <ctype.h>
 
 #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 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)
 static char *any();
 
 setnetent(f)
@@ -22,15 +42,16 @@ setnetent(f)
                netf = fopen(NETDB, "r" );
        else
                rewind(netf);
                netf = fopen(NETDB, "r" );
        else
                rewind(netf);
-       stayopen |= f;
+       _net_stayopen |= f;
 }
 
 endnetent()
 {
 }
 
 endnetent()
 {
-       if (netf && !stayopen) {
+       if (netf) {
                fclose(netf);
                netf = NULL;
        }
                fclose(netf);
                netf = NULL;
        }
+       _net_stayopen = 0;
 }
 
 struct netent *
 }
 
 struct netent *
@@ -64,19 +85,18 @@ again:
        net.n_net = inet_network(cp);
        net.n_addrtype = AF_INET;
        q = net.n_aliases = net_aliases;
        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;
                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);
        }
        *q = NULL;
        return (&net);