Documentation
¶
Index ¶
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type KernelPackage ¶
type KernelPackage struct {
// OperatingSystem is the name of the Operating System that this KernelPackage belongs to.
OperatingSystem string
// Name is the name of the KernelPackage from the Operating System's perspective.
Name string
// KernelRelease is the value to mock as the output of `uname -r`.
KernelRelease string
// KernelVersion is the value to mock as the output of `uname -v`.
KernelVersion string
// KernelMachine is the value to mock as the output of `uname -m`.
KernelMachine string
// OSRelease is the file contents to use as the mock of `/etc/os-release`.
OSRelease FileContents
// KernelConfiguration is the volume to mount as `/host/lib/modules/`.
KernelConfiguration Volume
// KernelSources is the volume to mount as `/usr/src/`.
KernelSources Volume
}
KernelPackage represents the required inputs for build a Falco Driver for a Kernel Package.
func (*KernelPackage) ProbeName ¶
func (kp *KernelPackage) ProbeName() string
ProbeName returns the ProbeName expected by Falco. interpreted from: https://github.com/falcosecurity/falco/blob/0.29.1/scripts/falco-driver-loader#L449
func (*KernelPackage) Validate ¶
func (kp *KernelPackage) Validate() error
Validate checks that the probeName contains the given operatingSystem
type OperatingSystem ¶
type OperatingSystem interface {
// GetName returns a unique string name for the implementation of this interface.
GetName() string
// GetKernelPackageNames returns a list of all available Kernel Package names.
GetKernelPackageNames() ([]string, error)
// GetKernelPackageByName returns a "hydrated" KernelPackage for the given Kernel Package name.
// "hydrated" means that the values are retrieved, so this function should perform the fetching of Kernel Sources, etc. for a KernelPackage
// and is the only place to return errors for those processes.
GetKernelPackageByName(name string) (*KernelPackage, error)
}
OperatingSystem abstracts the implementation of determining which kernel packages are available and the retrieval of them for an Operating System.
Click to show internal directories.
Click to hide internal directories.