Pass a pointer to user_env in to the init_session policy plugin

function so session setup can modify the user environment as needed.
For PAM authentication, merge the PAM environment with the user
environment at init_session time.  We no longer need to swap in the
user_env for environ during session init, nor do we need to disable
the env hooks at init_session time.
This commit is contained in:
Todd C. Miller
2012-03-15 09:18:36 -04:00
parent 0b1baf07ec
commit 6d10909949
11 changed files with 101 additions and 75 deletions

View File

@@ -278,29 +278,3 @@ deregister_hook(struct sudo_hook *hook)
debug_return_int(rval);
}
/* Deregister all environment handling hooks. */
void
deregister_env_hooks(void)
{
struct sudo_hook_list *tofree;
debug_decl(deregister_env_hooks, SUDO_DEBUG_HOOKS)
while ((tofree = sudo_hook_setenv_list) != NULL) {
sudo_hook_setenv_list = sudo_hook_setenv_list->next;
efree(tofree);
}
while ((tofree = sudo_hook_unsetenv_list) != NULL) {
sudo_hook_unsetenv_list = sudo_hook_unsetenv_list->next;
efree(tofree);
}
while ((tofree = sudo_hook_getenv_list) != NULL) {
sudo_hook_getenv_list = sudo_hook_getenv_list->next;
efree(tofree);
}
while ((tofree = sudo_hook_putenv_list) != NULL) {
sudo_hook_putenv_list = sudo_hook_putenv_list->next;
efree(tofree);
}
debug_return;
}