]> granicus.if.org Git - strace/commitdiff
Avoid potential core file clobbering on exit
authorDmitry V. Levin <ldv@altlinux.org>
Wed, 22 Feb 2012 00:15:27 +0000 (00:15 +0000)
committerDmitry V. Levin <ldv@altlinux.org>
Wed, 22 Feb 2012 00:15:27 +0000 (00:15 +0000)
* strace.c (main): Set RLIMIT_CORE to zero before terminating itself
with a deadly signal.
This fixes Debian bug #656398.

strace.c

index 2bca0de87a3e99bfd0d65896755498038c53bfe1..4030985bb35300f748deae647beaaebd7aa9bad7 100644 (file)
--- a/strace.c
+++ b/strace.c
@@ -1416,6 +1416,10 @@ main(int argc, char *argv[])
        cleanup();
        fflush(NULL);
        if (exit_code > 0xff) {
+               /* Avoid potential core file clobbering.  */
+               struct rlimit rlim = {0, 0};
+               setrlimit(RLIMIT_CORE, &rlim);
+
                /* Child was killed by a signal, mimic that.  */
                exit_code &= 0xff;
                signal(exit_code, SIG_DFL);