X-Git-Url: https://git.armaanb.net/?a=blobdiff_plain;f=env.c;h=2090897ea1738601eb9b82efe25d37b8660a4541;hb=025db698803cbd722444ba2745ead9a5c51efcb4;hp=f1fe45fbc83a6f51c7a2448209abe42b48f044f0;hpb=55adb00203fcb35df767868a02d6bcaea86092f5;p=opendoas.git diff --git a/env.c b/env.c index f1fe45f..2090897 100644 --- a/env.c +++ b/env.c @@ -29,6 +29,8 @@ #include "doas.h" #include "includes.h" +const char *formerpath; + struct envnode { RB_ENTRY(envnode) node; const char *key; @@ -199,8 +201,12 @@ fillenv(struct env *env, const char **envlist) /* assign value or inherit from environ */ if (eq) { val = eq + 1; - if (*val == '$') - val = getenv(val + 1); + if (*val == '$') { + if (strcmp(val + 1, "PATH") == 0) + val = formerpath; + else + val = getenv(val + 1); + } } else { val = getenv(name); }