version 1.9, 2004/09/28 15:10:51 |
version 1.10, 2004/11/12 16:37:38 |
|
|
/* Pull in vars we want to keep from the old environment. */ |
/* Pull in vars we want to keep from the old environment. */ |
for (ep = envp; *ep; ep++) { |
for (ep = envp; *ep; ep++) { |
keepit = 0; |
keepit = 0; |
|
|
|
/* Skip variables with values beginning with () (bash functions) */ |
|
if ((cp = strchr(*ep, '=')) != NULL) { |
|
if (strncmp(cp, "=() ", 3) == 0) |
|
continue; |
|
} |
|
|
for (cur = def_env_keep; cur; cur = cur->next) { |
for (cur = def_env_keep; cur; cur = cur->next) { |
len = strlen(cur->value); |
len = strlen(cur->value); |
/* Deal with '*' wildcard */ |
/* Deal with '*' wildcard */ |
|
|
*/ |
*/ |
for (ep = envp; *ep; ep++) { |
for (ep = envp; *ep; ep++) { |
okvar = 1; |
okvar = 1; |
|
|
|
/* Skip variables with values beginning with () (bash functions) */ |
|
if ((cp = strchr(*ep, '=')) != NULL) { |
|
if (strncmp(cp, "=() ", 3) == 0) |
|
continue; |
|
} |
|
|
/* Skip anything listed in env_delete. */ |
/* Skip anything listed in env_delete. */ |
for (cur = def_env_delete; cur && okvar; cur = cur->next) { |
for (cur = def_env_delete; cur && okvar; cur = cur->next) { |