diff options
Diffstat (limited to 'modules/pam_env')
-rw-r--r-- | modules/pam_env/pam_env.c | 5 |
1 files changed, 2 insertions, 3 deletions
diff --git a/modules/pam_env/pam_env.c b/modules/pam_env/pam_env.c index 4e5f6eb3..3a9eebea 100644 --- a/modules/pam_env/pam_env.c +++ b/modules/pam_env/pam_env.c @@ -791,10 +791,9 @@ handle_env (pam_handle_t *pamh, int argc, const char **argv) return PAM_BUF_ERR; } if (stat(envpath, &statbuf) == 0) { - uid_t euid = geteuid(); - setfsuid (user_entry->pw_uid); + uid_t fsuid = setfsuid(user_entry->pw_uid); retval = _parse_config_file(pamh, envpath); - setfsuid (euid); + setfsuid(fsuid); if (retval == PAM_IGNORE) retval = PAM_SUCCESS; } |