1
0
mirror of https://github.com/samba-team/samba.git synced 2024-12-24 21:34:56 +03:00

Really enable core dumps in Linux

commit e1f1ce68e1f685400a8c68bcec14018e3d1fc29d
Author: Rusty Russell <rusty@rustcorp.com.au>
Date:   Mon Sep 20 13:33:30 2010 +0930

    source3: dump core on Linux, even after seteuid/etc.

    The "dumpable" flag is reset on every call to set*uid, so we need to
    reset it to 1 in the signal handler itself.

    This code dates back to commit ac01fda2b9 6 years ago :(

    Signed-off-by: Rusty Russell <rusty@rustcorp.com.au>

Signed-off-by: Jeremy Allison <jra@samba.org>
This commit is contained in:
Rusty Russell 2010-09-20 13:49:19 +09:30 committed by Jeremy Allison
parent 2c9cb11f53
commit dc19278795

View File

@ -319,14 +319,6 @@ void dump_core_setup(const char *progname)
#endif
#endif
#if defined(HAVE_PRCTL) && defined(PR_SET_DUMPABLE)
/* On Linux we lose the ability to dump core when we change our user
* ID. We know how to dump core safely, so let's make sure we have our
* dumpable flag set.
*/
prctl(PR_SET_DUMPABLE, 1);
#endif
/* FIXME: if we have a core-plus-pid facility, configurably set
* this up here.
*/
@ -382,6 +374,14 @@ void dump_core_setup(const char *progname)
umask(~(0700));
dbgflush();
#if defined(HAVE_PRCTL) && defined(PR_SET_DUMPABLE)
/* On Linux we lose the ability to dump core when we change our user
* ID. We know how to dump core safely, so let's make sure we have our
* dumpable flag set.
*/
prctl(PR_SET_DUMPABLE, 1);
#endif
/* Ensure we don't have a signal handler for abort. */
#ifdef SIGABRT
CatchSignal(SIGABRT, SIG_DFL);