package system

import "github.com/opencontainers/runc/libcontainer/system"

Index

Functions

func ClearKeepCaps

func ClearKeepCaps() error

func Execv

func Execv(cmd string, args []string, env []string) error

func GetParentNSeuid

func GetParentNSeuid() int64

GetParentNSeuid returns the euid within the parent user namespace

func GetProcessStartTime

func GetProcessStartTime(pid int) (string, error)

GetProcessStartTime is deprecated. Use Stat(pid) and Stat_t.StartTime instead.

func GetSubreaper

func GetSubreaper() (int, error)

GetSubreaper returns the subreaper setting for the calling process

func Lgetxattr

func Lgetxattr(path string, attr string) ([]byte, error)

Returns a []byte slice if the xattr is set and nil otherwise Requires path and its attribute as arguments

func Prlimit

func Prlimit(pid, resource int, limit unix.Rlimit) error

func RunningInUserNS

func RunningInUserNS() bool

RunningInUserNS detects whether we are currently running in a user namespace. Originally copied from github.com/lxc/lxd/shared/util.go

func SetKeepCaps

func SetKeepCaps() error

func SetParentDeathSignal

func SetParentDeathSignal(sig uintptr) error

func SetSubreaper

func SetSubreaper(i int) error

SetSubreaper sets the value i as the subreaper setting for the calling process

func Setctty

func Setctty() error

func Setgid

func Setgid(gid int) (err error)

Setgid sets the gid of the calling thread to the specified gid.

func Setuid

func Setuid(uid int) (err error)

Setuid sets the uid of the calling thread to the specified uid.

func UIDMapInUserNS

func UIDMapInUserNS(uidmap []user.IDMap) bool

Types

type ParentDeathSignal

type ParentDeathSignal int

func GetParentDeathSignal

func GetParentDeathSignal() (ParentDeathSignal, error)

func (ParentDeathSignal) Restore

func (p ParentDeathSignal) Restore() error

func (ParentDeathSignal) Set

func (p ParentDeathSignal) Set() error

type Stat_t

type Stat_t struct {
	// PID is the process ID.
	PID uint

	// Name is the command run by the process.
	Name string

	// State is the state of the process.
	State State

	// StartTime is the number of clock ticks after system boot (since
	// Linux 2.6).
	StartTime uint64
}

Stat_t represents the information from /proc/[pid]/stat, as described in proc(5) with names based on the /proc/[pid]/status fields.

func Stat

func Stat(pid int) (stat Stat_t, err error)

Stat returns a Stat_t instance for the specified process.

type State

type State rune

State is the status of a process.

const (
	Dead        State = 'X'
	DiskSleep   State = 'D'
	Running     State = 'R'
	Sleeping    State = 'S'
	Stopped     State = 'T'
	TracingStop State = 't'
	Zombie      State = 'Z'
)

func (State) String

func (s State) String() string

String forms of the state from proc(5)'s documentation for /proc/[pid]/status' "State" field.

Source Files

linux.go proc.go syscall_linux_64.go xattrs_linux.go

Version
v1.0.0-rc92
Published
Aug 5, 2020
Platform
linux/amd64
Imports
11 packages
Last checked
1 hour ago

Tools for package owners.