system

package
v1.0.0-rc10 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Jan 22, 2020 License: Apache-2.0 Imports: 11 Imported by: 0

Documentation

Index

Constants

View Source
const PR_SET_CHILD_SUBREAPER = 36

If arg2 is nonzero, set the "child subreaper" attribute of the calling process; if arg2 is zero, unset the attribute. When a process is marked as a child subreaper, all of the children that it creates, and their descendants, will be marked as having a subreaper. In effect, a subreaper fulfills the role of init(1) for its descendant processes. Upon termination of a process that is orphaned (i.e., its immediate parent has already terminated) and marked as having a subreaper, the nearest still living ancestor subreaper will receive a SIGCHLD signal and be able to wait(2) on the process to discover its termination status.

Variables

This section is empty.

Functions

func ClearKeepCaps

func ClearKeepCaps() error

func Execv

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

func GetClockTicks

func GetClockTicks() int

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 added in v0.1.0

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

func RunningInUserNS added in v0.0.7

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 added in v0.1.0

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.

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL