Commit | Line | Data |
---|---|---|
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 | ||
22 | extern char **environ; | |
23 | ||
24 | getenv_(fname, value, flen, vlen) | |
25 | char *value, *fname; | |
26 | long 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 | } |