From 4356cb6b4cefb142d182784c264ce936a1ec3626 Mon Sep 17 00:00:00 2001 From: tedu Date: Sun, 7 Jul 2019 19:21:28 +0000 Subject: [PATCH] fix one last edge case regarding PATH, allows simpler config. --- doas.conf.5 | 2 +- env.c | 5 ++++- 2 files changed, 5 insertions(+), 2 deletions(-) diff --git a/doas.conf.5 b/doas.conf.5 index d7642bd..54022ee 100644 --- a/doas.conf.5 +++ b/doas.conf.5 @@ -133,7 +133,7 @@ while retaining the original PATH. permit persist setenv { PKG_CACHE PKG_PATH } aja cmd pkg_add permit setenv { -ENV PS1=$DOAS_PS1 SSH_AUTH_SOCK } :wheel permit nopass tedu as root cmd /usr/sbin/procmap -permit nopass keepenv setenv { PATH=$PATH } root as root +permit nopass keepenv setenv { PATH } root as root .Ed .Sh SEE ALSO .Xr doas 1 diff --git a/env.c b/env.c index 2090897..12909c6 100644 --- a/env.c +++ b/env.c @@ -208,7 +208,10 @@ fillenv(struct env *env, const char **envlist) val = getenv(val + 1); } } else { - val = getenv(name); + if (strcmp(name, "PATH") == 0) + val = formerpath; + else + val = getenv(name); } /* at last, we have something to insert */ if (val) { -- 2.39.2