nvidia driver workaround atexit handlers for pam auth

this works around an apparently atexit() handler in nvidia drivers
that if you fork() a parent and do NOT exec() then the child process
will end up messing with the parent processes access to the nvidia
devices/display/whatever i believe via an atexit() handler because
moving from exit() to _exit() solves the issue. fixes T6197

@fix
devs/bu5hm4n/sandbox_fix
Carsten Haitzler 5 years ago
parent df55db07df
commit 4f8e3acfcf
  1. 6
      src/bin/e_auth.c

@ -236,7 +236,7 @@ e_auth_begin(char *passwd)
if (pamerr != PAM_SUCCESS)
{
free(current_user);
exit(1);
_exit(1);
}
pamerr = pam_authenticate(da.pam.handle, 0);
pam_end(da.pam.handle, pamerr);
@ -246,10 +246,10 @@ e_auth_begin(char *passwd)
if (pamerr == PAM_SUCCESS)
{
free(current_user);
exit(0);
_exit(0);
}
free(current_user);
exit(-1);
_exit(-1);
return 0;
}

Loading…
Cancel
Save