1// Copyright 2023 The Go Authors. All rights reserved. 2// Use of this source code is governed by a BSD-style 3// license that can be found in the LICENSE file. 4 5package unix 6 7import "syscall" 8 9func PidFDSendSignal(pidfd uintptr, s syscall.Signal) error { 10 _, _, errno := syscall.Syscall(pidfdSendSignalTrap, pidfd, uintptr(s), 0) 11 if errno != 0 { 12 return errno 13 } 14 return nil 15} 16 17func PidFDOpen(pid, flags int) (uintptr, error) { 18 pidfd, _, errno := syscall.Syscall(pidfdOpenTrap, uintptr(pid), uintptr(flags), 0) 19 if errno != 0 { 20 return ^uintptr(0), errno 21 } 22 return uintptr(pidfd), nil 23} 24