macro and text revision (-mdoc version 3)
[unix-history] / usr / src / lib / libc / stdlib / getenv.c
index ddf12f8..de323b2 100644 (file)
@@ -1,25 +1,34 @@
+/*
+ * Copyright (c) 1987 Regents of the University of California.
+ * All rights reserved.
+ *
+ * %sccs.include.redist.c%
+ */
+
 #if defined(LIBC_SCCS) && !defined(lint)
 #if defined(LIBC_SCCS) && !defined(lint)
-static char sccsid[] = "@(#)getenv.c   5.3 (Berkeley) %G%";
-#endif LIBC_SCCS and not lint
+static char sccsid[] = "@(#)getenv.c   5.8 (Berkeley) %G%";
+#endif /* LIBC_SCCS and not lint */
 
 
-#include <stdio.h>
+#include <stdlib.h>
+#include <stddef.h>
+#include <string.h>
 
 /*
 
 /*
- * getenv(name) --
+ * getenv --
  *     Returns ptr to value associated with name, if any, else NULL.
  */
 char *
 getenv(name)
  *     Returns ptr to value associated with name, if any, else NULL.
  */
 char *
 getenv(name)
-       char *name;
+       const char *name;
 {
 {
-       int     offset;
-       char    *_findenv();
+       int offset;
+       char *_findenv();
 
 
-       return(_findenv(name,&offset));
+       return(_findenv(name, &offset));
 }
 
 /*
 }
 
 /*
- * _findenv(name,offset) --
+ * _findenv --
  *     Returns pointer to value associated with name, if any, else NULL.
  *     Sets offset to be the offset of the name/value combination in the
  *     environmental array, for use by setenv(3) and unsetenv(3).
  *     Returns pointer to value associated with name, if any, else NULL.
  *     Sets offset to be the offset of the name/value combination in the
  *     environmental array, for use by setenv(3) and unsetenv(3).
@@ -28,18 +37,17 @@ getenv(name)
  *     This routine *should* be a static; don't use it.
  */
 char *
  *     This routine *should* be a static; don't use it.
  */
 char *
-_findenv(name,offset)
+_findenv(name, offset)
        register char *name;
        register char *name;
-       int     *offset;
+       int *offset;
 {
 {
-       extern char     **environ;
-       register int    len;
-       register char   **P,
-                       *C;
+       extern char **environ;
+       register int len;
+       register char **P, *C;
 
 
-       for (C = name,len = 0;*C && *C != '=';++C,++len);
-       for (P = environ;*P;++P)
-               if (!strncmp(*P,name,len))
+       for (C = name, len = 0; *C && *C != '='; ++C, ++len);
+       for (P = environ; *P; ++P)
+               if (!strncmp(*P, name, len))
                        if (*(C = *P + len) == '=') {
                                *offset = P - environ;
                                return(++C);
                        if (*(C = *P + len) == '=') {
                                *offset = P - environ;
                                return(++C);