summaryrefslogtreecommitdiffstats
path: root/sandbox
diff options
context:
space:
mode:
authorjln@chromium.org <jln@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2014-02-14 07:31:03 +0000
committerjln@chromium.org <jln@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2014-02-14 07:31:03 +0000
commit59890750132cc5141e1483444f5a366c246efb6b (patch)
treedcad754fcb900f77ba1b081f5cc339d3b2e0422c /sandbox
parentb0396cabd6623c5f42f6ff2b200ff00eb47f376d (diff)
downloadchromium_src-59890750132cc5141e1483444f5a366c246efb6b.zip
chromium_src-59890750132cc5141e1483444f5a366c246efb6b.tar.gz
chromium_src-59890750132cc5141e1483444f5a366c246efb6b.tar.bz2
Revert 251265 "Setuid sandbox: exit(2) on SIGABRT"
> Setuid sandbox: exit(2) on SIGABRT > > The setuid sandbox waits on its one child and then dies > afterwards. > > When receiving SIGABRT, instead of dumping core, simply exit the > process. There is no interesting information to be gathered from > knowing that the process is inside waitid(2), one should look at > the child process instead. > > This patch hopes to reduce red herrings. > > BUG=334345 > NOTRY=true > R=jorgelo@chromium.org > > Review URL: https://codereview.chromium.org/165673002 TBR=jln@chromium.org Review URL: https://codereview.chromium.org/164373005 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@251269 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'sandbox')
-rw-r--r--sandbox/linux/suid/sandbox.c15
1 files changed, 0 insertions, 15 deletions
diff --git a/sandbox/linux/suid/sandbox.c b/sandbox/linux/suid/sandbox.c
index 5a9c3dc..2dd78ef 100644
--- a/sandbox/linux/suid/sandbox.c
+++ b/sandbox/linux/suid/sandbox.c
@@ -58,12 +58,6 @@ static void FatalError(const char *msg, ...) {
_exit(1);
}
-static void ExitWithErrorSignalHandler(int signal) {
- const char msg[] = "\nThe setuid sandbox got signaled, exiting.\n";
- write(2, msg, sizeof(msg) - 1);
- _exit(1);
-}
-
// We will chroot() to the helper's /proc/self directory. Anything there will
// not exist anymore if we make sure to wait() for the helper.
//
@@ -201,15 +195,6 @@ static void WaitForChildAndExit(pid_t child_pid) {
int exit_code = -1;
siginfo_t reaped_child_info;
- // Don't "Core" on SIGABRT. SIGABRT is sent by the Chrome OS session manager
- // when things are hanging.
- // Here, the current process is going to waitid() and _exit(), so there is no
- // point in generating a crash report. The child process is the one
- // blocking us.
- if (signal(SIGABRT, ExitWithErrorSignalHandler) == SIG_ERR) {
- FatalError("Failed to change signal handler");
- }
-
int wait_ret =
HANDLE_EINTR(waitid(P_PID, child_pid, &reaped_child_info, WEXITED));