From: Ian Lance Taylor Date: Thu, 20 Dec 2018 02:25:08 +0000 (-0800) Subject: syscall: document LockOSThread with GNU/Linux SysProcAttr.Ptrace X-Git-Tag: go1.12beta2~80 X-Git-Url: http://www.git.cypherpunks.su/?a=commitdiff_plain;h=b115207baf6c2decc3820ada4574ef4e5ad940ec;p=gostls13.git syscall: document LockOSThread with GNU/Linux SysProcAttr.Ptrace Fixes #28315 Change-Id: Ie02c72d02ad2f66c9cdbbba579a304641f327672 Reviewed-on: https://go-review.googlesource.com/c/155138 Reviewed-by: Brad Fitzpatrick --- diff --git a/src/syscall/exec_linux.go b/src/syscall/exec_linux.go index 7ae3177fdc..6c761f85c4 100644 --- a/src/syscall/exec_linux.go +++ b/src/syscall/exec_linux.go @@ -20,9 +20,12 @@ type SysProcIDMap struct { } type SysProcAttr struct { - Chroot string // Chroot. - Credential *Credential // Credential. - Ptrace bool // Enable tracing. + Chroot string // Chroot. + Credential *Credential // Credential. + // Ptrace tells the child to call ptrace(PTRACE_TRACEME). + // Call runtime.LockOSThread before starting a process with this set, + // and don't call UnlockOSThread until done with PtraceSyscall calls. + Ptrace bool Setsid bool // Create session. Setpgid bool // Set process group ID to Pgid, or, if Pgid == 0, to new pid. Setctty bool // Set controlling terminal to fd Ctty (only meaningful if Setsid is set)