12526Sdlw /* 2*23022Skre * Copyright (c) 1980 Regents of the University of California. 3*23022Skre * All rights reserved. The Berkeley software License Agreement 4*23022Skre * specifies the terms and conditions for redistribution. 52526Sdlw * 6*23022Skre * @(#)getenv_.c 5.1 06/07/85 7*23022Skre */ 8*23022Skre 9*23022Skre /* 102526Sdlw * return environment variables 112526Sdlw * 122526Sdlw * calling sequence: 132526Sdlw * character*20 evar 142526Sdlw * call getenv (ENV_NAME, evar) 152526Sdlw * where: 162526Sdlw * ENV_NAME is the name of an environment variable 172526Sdlw * evar is a character variable which will receive 182526Sdlw * the current value of ENV_NAME, 192526Sdlw * or all blanks if ENV_NAME is not defined 202526Sdlw */ 212526Sdlw 222526Sdlw extern char **environ; 232526Sdlw 242526Sdlw getenv_(fname, value, flen, vlen) 252526Sdlw char *value, *fname; 262526Sdlw long int vlen, flen; 272526Sdlw { 282526Sdlw register char *ep, *fp; 292526Sdlw register char **env = environ; 302526Sdlw int i; 312526Sdlw 322526Sdlw while (ep = *env++) { 332526Sdlw for (fp=fname, i=0; i <= flen; i++) { 342526Sdlw if (i == flen || *fp == ' ') { 352526Sdlw if (*ep++ == '=') { 362526Sdlw b_char(ep, value, vlen); 372526Sdlw return(0); 382526Sdlw } 392526Sdlw else break; 402526Sdlw } 412526Sdlw else if (*ep++ != *fp++) break; 422526Sdlw } 432526Sdlw } 442526Sdlw b_char(" ", value, vlen); 452526Sdlw return(0); 462526Sdlw } 47