diff --git a/pathnames.h.in b/pathnames.h.in index cf6fd47d5..d27fcf352 100644 --- a/pathnames.h.in +++ b/pathnames.h.in @@ -53,7 +53,8 @@ # define _PATH_STDPATH "/usr/bin:/bin:/usr/sbin:/sbin" #endif /* _PATH_STDPATH */ -#ifndef _PATH_ENVIRONMENT +/* Use /etc/environment on AIX or Linux w/o PAM (where pam_env handles it). */ +#if defined(_AIX) || (defined(__linux__) && !defined(HAVE_PAM)) # define _PATH_ENVIRONMENT "/etc/environment" #endif /* _PATH_ENVIRONMENT */ diff --git a/plugins/sudoers/env.c b/plugins/sudoers/env.c index b6954c1da..ed0bece6b 100644 --- a/plugins/sudoers/env.c +++ b/plugins/sudoers/env.c @@ -911,7 +911,7 @@ rebuild_env(const struct sudoers_context *ctx) } } #endif /* HAVE_LOGIN_CAP_H */ -#if defined(_AIX) || (defined(__linux__) && !defined(HAVE_PAM)) +#ifdef _PATH_ENVIRONMENT /* Insert system-wide environment variables. */ if (!read_env_file(ctx, _PATH_ENVIRONMENT, true, false)) sudo_warn("%s", _PATH_ENVIRONMENT); diff --git a/plugins/sudoers/sudoers.c b/plugins/sudoers/sudoers.c index 93959dcc3..b11c5b9cd 100644 --- a/plugins/sudoers/sudoers.c +++ b/plugins/sudoers/sudoers.c @@ -725,7 +725,7 @@ sudoers_check_cmnd(int argc, char * const argv[], char *env_add[], sudoers_ctx.runas.argc++; } -#if defined(_AIX) || (defined(__linux__) && !defined(HAVE_PAM)) +#ifdef _PATH_ENVIRONMENT /* Insert system-wide environment variables. */ if (!read_env_file(&sudoers_ctx, _PATH_ENVIRONMENT, true, false)) sudo_warn("%s", _PATH_ENVIRONMENT);