delve/proctl/ptrace_darwin.go

32 lines
642 B
Go
Raw Normal View History

2015-01-14 02:37:10 +00:00
package proctl
import (
"syscall"
sys "golang.org/x/sys/unix"
)
2015-05-01 20:50:29 +00:00
func PtraceDetach(tid, sig int) error {
_, _, err := sys.Syscall6(sys.SYS_PTRACE, sys.PT_DETACH, uintptr(tid), 1, uintptr(sig), 0, 0)
if err != syscall.Errno(0) {
return err
}
return nil
}
2015-01-14 02:37:10 +00:00
func PtraceCont(tid, sig int) error {
_, _, err := sys.Syscall6(sys.SYS_PTRACE, sys.PTRACE_CONT, uintptr(tid), 1, uintptr(sig), 0, 0)
if err != syscall.Errno(0) {
return err
}
return nil
}
func PtraceSingleStep(tid int) error {
_, _, err := sys.Syscall6(sys.SYS_PTRACE, sys.PT_STEP, uintptr(tid), 1, 0, 0, 0)
if err != syscall.Errno(0) {
return err
}
return nil
}