Documentation ¶
Index ¶
- Constants
- func AppArmorProfile() string
- func CPUResource() (*api.ResourcesCPU, error)
- func CanonicalNetworkAddress(address string) string
- func CheckTrustState(cert x509.Certificate, trustedCerts map[string]x509.Certificate) (bool, string)
- func CompareConfigs(config1, config2 map[string]string, exclude []string) error
- func CompareVersions(version1, version2 [2]int) (int, error)
- func CopyConfig(config map[string]string) map[string]string
- func EtagCheck(r *http.Request, data interface{}) error
- func EtagHash(data interface{}) (string, error)
- func FilesystemDetect(path string) (string, error)
- func GetArchitectures() ([]int, error)
- func GetExecPath() string
- func GetIdmapSet() *idmap.IdmapSet
- func GetListeners(start int) []net.Listener
- func HTTPClient(certificate string, proxy proxyFunc) (*http.Client, error)
- func InMemoryNetwork() (net.Listener, func() net.Conn)
- func IsAddressCovered(address1, address2 string) bool
- func IsRecursionRequest(r *http.Request) bool
- func ListenAddresses(value string) ([]string, error)
- func LoadCert(dir string) (*shared.CertInfo, error)
- func LoadModule(module string) error
- func MemoryResource() (*api.ResourcesMemory, error)
- func NetworkInterfaceAddress() string
- func PasswordCheck(secret string, password string) error
- func RuntimeLiblxcVersionAtLeast(major int, minor int, micro int) bool
- func ServerTLSConfig(cert *shared.CertInfo) *tls.Config
- func WriteCert(dir, prefix string, cert, key, ca []byte) error
- func WriteJSON(w http.ResponseWriter, body interface{}, debug bool) error
- type ContextAwareRequest
Constants ¶
const ( FilesystemSuperMagicTmpfs = 0x01021994 FilesystemSuperMagicExt4 = 0xEF53 FilesystemSuperMagicXfs = 0x58465342 FilesystemSuperMagicNfs = 0x6969 FilesystemSuperMagicZfs = 0x2fc12fc1 )
Filesystem magic numbers
const (
// FilesystemSuperMagicBtrfs is the 64bit magic for Btrfs
FilesystemSuperMagicBtrfs = 0x9123683E
)
const SystemdListenFDsStart = 3
SystemdListenFDsStart is the number of the first file descriptor that might have been opened by systemd when socket activation is enabled. It's always 3 in real-world usage (i.e. the first file descriptor opened after stdin, stdout and stderr), so this constant should always be the value passed to GetListeners, except for unit tests.
Variables ¶
This section is empty.
Functions ¶
func AppArmorProfile ¶
func AppArmorProfile() string
AppArmorProfile returns the current apparmor profile.
func CPUResource ¶
func CPUResource() (*api.ResourcesCPU, error)
CPUResource returns the system CPU information
func CanonicalNetworkAddress ¶
CanonicalNetworkAddress parses the given network address and returns a string of the form "host:port", possibly filling it with the default port if it's missing.
func CheckTrustState ¶
func CheckTrustState(cert x509.Certificate, trustedCerts map[string]x509.Certificate) (bool, string)
CheckTrustState checks whether the given client certificate is trusted (i.e. it has a valid time span and it belongs to the given list of trusted certificates).
func CompareConfigs ¶
CompareConfigs compares two config maps and returns an error if they differ.
func CompareVersions ¶
CompareVersions the versions of two LXD nodes.
A version consists of the version the node's schema and the number of API extensions it supports.
Return 0 if they equal, 1 if the first version is greater than the second and 2 if the second is greater than the first.
Return an error if inconsistent versions are detected, for example the first node's schema is greater than the second's, but the number of extensions is smaller.
func CopyConfig ¶
CopyConfig creates a new map with a copy of the given config.
func EtagCheck ¶
EtagCheck validates the hash of the current state with the hash provided by the client
func FilesystemDetect ¶
FilesystemDetect returns the filesystem on which the passed-in path sits.
func GetArchitectures ¶
GetArchitectures returns the list of supported architectures.
func GetListeners ¶
GetListeners returns the socket-activated network listeners, if any.
The 'start' parameter must be SystemdListenFDsStart, except in unit tests, see the docstring of SystemdListenFDsStart below.
func HTTPClient ¶
HTTPClient returns an http.Client using the given certificate and proxy.
func InMemoryNetwork ¶
InMemoryNetwork creates a fully in-memory listener and dial function.
Each time the dial function is invoked a new pair of net.Conn objects will be created using net.Pipe: the listener's Accept method will unblock and return one end of the pipe and the other end will be returned by the dial function.
func IsAddressCovered ¶
IsAddressCovered detects if network address1 is actually covered by address2, in the sense that they are either the same address or address2 is specified using a wildcard with the same port of address1.
func IsRecursionRequest ¶
IsRecursionRequest checks whether the given HTTP request is marked with the "recursion" flag in its form values.
func ListenAddresses ¶
ListenAddresses returns a list of host:port combinations at which this machine can be reached
func LoadCert ¶
LoadCert reads the LXD server certificate from the given var dir.
If a cluster certificate is found it will be loaded instead.
func LoadModule ¶
LoadModule loads the kernel module with the given name, by invoking modprobe.
func MemoryResource ¶
func MemoryResource() (*api.ResourcesMemory, error)
MemoryResource returns the system memory information
func NetworkInterfaceAddress ¶
func NetworkInterfaceAddress() string
NetworkInterfaceAddress returns the first non-loopback address of any of the system network interfaces.
Return the empty string if none is found.
func PasswordCheck ¶
PasswordCheck validates the provided password against the encoded secret
func RuntimeLiblxcVersionAtLeast ¶
RuntimeLiblxcVersionAtLeast checks if the system's liblxc matches the provided version requirement
func ServerTLSConfig ¶
ServerTLSConfig returns a new server-side tls.Config generated from the give certificate info.