diff options
author | Dmitry V. Levin <ldv@altlinux.org> | 2012-02-22 00:15:27 +0000 |
---|---|---|
committer | Dmitry V. Levin <ldv@altlinux.org> | 2012-02-22 00:15:27 +0000 |
commit | 6c38156b6e345a25118e0b7144822bdf55839631 (patch) | |
tree | 0f7cea4001ba1810427f782c70a5be962bff5f33 | |
parent | 44824b9d4b05ba81d722f586b6e2803e7d18ca7b (diff) | |
download | strace-6c38156b6e345a25118e0b7144822bdf55839631.tar.gz |
Avoid potential core file clobbering on exit
* strace.c (main): Set RLIMIT_CORE to zero before terminating itself
with a deadly signal.
This fixes Debian bug #656398.
-rw-r--r-- | strace.c | 4 |
1 files changed, 4 insertions, 0 deletions
@@ -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); |