summaryrefslogtreecommitdiff
path: root/platform-tracing.c
diff options
context:
space:
mode:
authorDarren Tucker <dtucker@zip.com.au>2016-11-01 08:12:33 +1100
committerDarren Tucker <dtucker@zip.com.au>2016-11-01 08:12:33 +1100
commit5ee3fb5affd7646f141749483205ade5fc54adaf (patch)
treef66f754606f1335a2197bfa83b6986be9539e4f6 /platform-tracing.c
parent315d2a4e674d0b7115574645cb51f968420ebb34 (diff)
Use ptrace(PT_DENY_ATTACH, ..) on OS X.
Diffstat (limited to 'platform-tracing.c')
-rw-r--r--platform-tracing.c8
1 files changed, 8 insertions, 0 deletions
diff --git a/platform-tracing.c b/platform-tracing.c
index 81020e7f7..4c80a282c 100644
--- a/platform-tracing.c
+++ b/platform-tracing.c
@@ -20,6 +20,9 @@
20#if defined(HAVE_SYS_PRCTL_H) 20#if defined(HAVE_SYS_PRCTL_H)
21#include <sys/prctl.h> /* For prctl() and PR_SET_DUMPABLE */ 21#include <sys/prctl.h> /* For prctl() and PR_SET_DUMPABLE */
22#endif 22#endif
23#ifdef HAVE_SYS_PTRACE_H
24#include <sys/ptrace.h>
25#endif
23#ifdef HAVE_PRIV_H 26#ifdef HAVE_PRIV_H
24#include <priv.h> /* For setpflags() and __PROC_PROTECT */ 27#include <priv.h> /* For setpflags() and __PROC_PROTECT */
25#endif 28#endif
@@ -40,4 +43,9 @@ platform_disable_tracing(int strict)
40 if (setpflags(__PROC_PROTECT, 1) != 0 && strict) 43 if (setpflags(__PROC_PROTECT, 1) != 0 && strict)
41 fatal("unable to make the process untraceable"); 44 fatal("unable to make the process untraceable");
42#endif 45#endif
46#ifdef PT_DENY_ATTACH
47 /* Mac OS X */
48 if (ptrace(PT_DENY_ATTACH, 0, 0, 0) == -1 && strict)
49 fatal("unable to set PT_DENY_ATTACH");
50#endif
43} 51}