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.
AppArmorProfile returns the current apparmor profile.
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(cert x509.Certificate, trustedCerts map[string]x509.Certificate, certInfo *shared.CertInfo, trustCACertificates bool) (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).
CompareConfigs compares two config maps and returns an error if they differ.
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.
CopyConfig creates a new map with a copy of the given config.
EtagCheck validates the hash of the current state with the hash provided by the client
EtagHash hashes the provided data and returns the sha256
FilesystemDetect returns the filesystem on which the passed-in path sits.
GetArchitectures returns the list of supported architectures.
GetExecPath returns the path to the current binary
GetIdmapSet reads the uid/gid allocation.
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.
HTTPClient returns an http.Client using the given certificate and proxy.
HasFilesystem checks whether a given filesystem is already supported by the kernel. Note that if the filesystem is a module, you may need to load it first.
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.
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.
IsJSONRequest returns true if the content type of the HTTP request is JSON.
IsRecursionRequest checks whether the given HTTP request is marked with the "recursion" flag in its form values.
ListenAddresses returns a list of host:port combinations at which this machine can be reached
LoadCert reads the LXD server certificate from the given var dir.
If a cluster certificate is found it will be loaded instead.
LoadModule loads the kernel module with the given name, by invoking modprobe.
NetworkInterfaceAddress returns the first non-loopback address of any of the system network interfaces.
Return the empty string if none is found.
PasswordCheck validates the provided password against the encoded secret
RuntimeLiblxcVersionAtLeast checks if the system's liblxc matches the provided version requirement
ServerTLSConfig returns a new server-side tls.Config generated from the give certificate info.
SysctlGet retrieves the value of a sysctl file in /proc/sys.
SysctlSet writes a value to a sysctl file in /proc/sys.
WriteCert writes the given material to the appropriate certificate files in the given LXD var directory.
WriteJSON encodes the body as JSON and sends it back to the client
ContextAwareRequest is an interface implemented by http.Request starting from Go 1.8. It supports graceful cancellation using a context.