* Initialize env based on envp.
*/
void
-env_init(envp, lazy)
- char * const envp[];
+env_init(lazy)
int lazy;
{
char * const *ep;
size_t len;
- for (ep = envp; *ep != NULL; ep++)
+ for (ep = environ; *ep != NULL; ep++)
continue;
- len = (size_t)(ep - envp);
+ len = (size_t)(ep - environ);
if (lazy) {
/*
* If we are already initialized due to lazy init (usualy via getenv())
* we need to avoid calling malloc() as it may call getenv() itself.
*/
- env.envp = (char **)envp;
+ env.envp = environ;
env.env_len = len;
env.env_size = len;
} else if (!env.owned) {
#ifdef ENV_DEBUG
memset(env.envp, 0, env.env_size * sizeof(char *));
#endif
- memcpy(env.envp, envp, len * sizeof(char *));
+ memcpy(env.envp, environ, len * sizeof(char *));
env.envp[len] = '\0';
env.owned = TRUE;
}
size_t vlen = strlen(var);
if (env.envp == NULL)
- env_init(environ, TRUE);
+ env_init(TRUE);
for (ev = env.envp; (cp = *ev) != NULL; ev++) {
if (strncmp(var, cp, vlen) == 0 && cp[vlen] == '=')
size_t esize;
if (env.envp == NULL)
- env_init(environ, TRUE);
+ env_init(TRUE);
if (!var || *var == '\0') {
errno = EINVAL;
size_t len;
if (env.envp == NULL)
- env_init(environ, TRUE);
+ env_init(TRUE);
if (strchr(var, '=') != NULL) {
errno = EINVAL;
#endif
{
if (env.envp == NULL)
- env_init(environ, TRUE);
+ env_init(TRUE);
if (strchr(string, '=') == NULL) {
errno = EINVAL;
(void) sigaction(SIGTSTP, &sa, &saved_sa_tstp);
/* Initialize environment functions (including replacements). */
- env_init(envp, FALSE);
+ env_init(FALSE);
/*
* Turn off core dumps and make sure fds 0-2 are open.
/* env.c */
char **env_get __P((void));
-void env_init __P((char * const envp[], int lazy));
+void env_init __P((int lazy));
void init_envtables __P((void));
void insert_env_vars __P((struct list_member *));
void read_env_file __P((const char *, int));