Debugger permissions in macOS 10.12
Hi, This is a log from a codesigned gdb 7.11.1 with debug logging enabled: *** Starting program: textthr [632 inferior]: inferior task: 0x300b, pid: 701 [632 inferior]: new_ix:0/1, old_ix:0/0, new_id:0x3203 old_id:0x0 [632 inferior]: darwin_wait: waiting for a message pid=701 thread=0 [701 inferior]: ptrace (PT_TRACE_ME, 0, 0x0, 0): 0 (no error) [701 inferior]: ptrace (PT_SIGEXC, 0, 0x0, 0): 0 (no error) message header: bits: 0x1200 size: 0x24 remote-port: 0x0 local-port: 0xf87 reserved: 0x0 id: 0x48 data: 00000000 00000001 0000300b [632 inferior]: darwin_wait: pid=701 exit, status=0x5 [632 inferior]: task=0x300b, prev=0x0, notify_port=0xf87 *** Thanks, Jonas _______________________________________________ Do not post admin requests to the list. They will be ignored. Darwin-dev mailing list (Darwin-dev@lists.apple.com) Help/Unsubscribe/Update your Subscription: https://lists.apple.com/mailman/options/darwin-dev/site_archiver%40lists.app... This email sent to site_archiver@lists.apple.com It seems that codesigning gdb with a self-signed, always-trust certificate that is inside the "System" keychain is no longer sufficient for it to be able ptrace child processes (i.e., following the steps at https://sourceware.org/gdb/wiki/BuildingOnDarwin#Method_for_Mac_OS_X_10.5_.2... ). During startup program terminated with signal SIGTRAP, Trace/breakpoint trap. Are there new requirements in macOS 10.12 compared to previous OS X releases, and if so what are they? Disabling SIP works around the issue, but I'd rather not do that (nor recommend it to anyone else).
participants (1)
-
Jonas Maebe