BSD 4_3 release
[unix-history] / usr / src / usr.lib / libU77 / getenv_.c
CommitLineData
d1b03754 1/*
161423a6
RE
2 * Copyright (c) 1980 Regents of the University of California.
3 * All rights reserved. The Berkeley software License Agreement
4 * specifies the terms and conditions for redistribution.
d1b03754 5 *
95f51977 6 * @(#)getenv_.c 5.1 6/7/85
161423a6
RE
7 */
8
9/*
d1b03754
DW
10 * return environment variables
11 *
12 * calling sequence:
13 * character*20 evar
14 * call getenv (ENV_NAME, evar)
15 * where:
16 * ENV_NAME is the name of an environment variable
17 * evar is a character variable which will receive
18 * the current value of ENV_NAME,
19 * or all blanks if ENV_NAME is not defined
20 */
21
22extern char **environ;
23
24getenv_(fname, value, flen, vlen)
25char *value, *fname;
26long int vlen, flen;
27{
28 register char *ep, *fp;
29 register char **env = environ;
30 int i;
31
32 while (ep = *env++) {
33 for (fp=fname, i=0; i <= flen; i++) {
34 if (i == flen || *fp == ' ') {
35 if (*ep++ == '=') {
36 b_char(ep, value, vlen);
37 return(0);
38 }
39 else break;
40 }
41 else if (*ep++ != *fp++) break;
42 }
43 }
44 b_char(" ", value, vlen);
45 return(0);
46}