incus-mirror/shared/subprocess/proc_linux.go
Mark Laing ff509220ad shared/subprocess: Fixes imports.
Signed-off-by: Mark Laing <mark.laing@canonical.com>
2022-06-28 10:27:20 +01:00

23 lines
451 B
Go

//go:build linux && cgo
package subprocess
import (
"syscall"
"github.com/lxc/lxd/shared/idmap"
)
// SetUserns allows running inside of a user namespace.
func (p *Process) SetUserns(userns *idmap.IdmapSet) {
p.SysProcAttr = &syscall.SysProcAttr{
Cloneflags: syscall.CLONE_NEWUSER,
Credential: &syscall.Credential{
Uid: uint32(0),
Gid: uint32(0),
},
UidMappings: userns.ToUidMappings(),
GidMappings: userns.ToGidMappings(),
}
}