sysinfo

package
v0.0.0-...-5e14263 Latest Latest
Warning

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

Go to latest
Published: Nov 25, 2019 License: Apache-2.0 Imports: 11 Imported by: 0

README

SysInfo stores information about which features a kernel supports.

Documentation

Index

Constants

View Source
const (
	// SeccompModeFilter refers to the syscall argument SECCOMP_MODE_FILTER.
	SeccompModeFilter = uintptr(2)
)

Variables

This section is empty.

Functions

func NumCPU

func NumCPU() int

NumCPU returns the number of CPUs which are currently online

Types

type SysInfo

type SysInfo struct {
	// Whether the kernel supports AppArmor or not
	AppArmor bool
	// Whether the kernel supports Seccomp or not
	Seccomp bool

	// Whether IPv4 forwarding is supported or not, if this was disabled, networking will not work
	IPv4ForwardingDisabled bool

	// Whether bridge-nf-call-iptables is supported or not
	BridgeNFCallIPTablesDisabled bool

	// Whether bridge-nf-call-ip6tables is supported or not
	BridgeNFCallIP6TablesDisabled bool

	// Whether the cgroup has the mountpoint of "devices" or not
	CgroupDevicesEnabled bool
	// contains filtered or unexported fields
}

SysInfo stores information about which features a kernel supports. TODO Windows: Factor out platform specific capabilities.

func New

func New(quiet bool) *SysInfo

New returns a new SysInfo, using the filesystem to detect which features the kernel supports. If `quiet` is `false` warnings are printed in logs whenever an error occurs or misconfigurations are present.

func (SysInfo) IsCpusetCpusAvailable

func (c SysInfo) IsCpusetCpusAvailable(provided string) (bool, error)

IsCpusetCpusAvailable returns `true` if the provided string set is contained in cgroup's cpuset.cpus set, `false` otherwise. If error is not nil a parsing error occurred.

func (SysInfo) IsCpusetMemsAvailable

func (c SysInfo) IsCpusetMemsAvailable(provided string) (bool, error)

IsCpusetMemsAvailable returns `true` if the provided string set is contained in cgroup's cpuset.mems set, `false` otherwise. If error is not nil a parsing error occurred.

Jump to

Keyboard shortcuts

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