Documentation
¶
Overview ¶
Package loader provides accessors to compilation and BPF load routines necessary for creating datapath objects and attaching them to links.
Index ¶
Constants ¶
This section is empty.
Variables ¶
View Source
var Cell = cell.Module( "loader", "Loader", cell.Provide(NewLoader), cell.Provide(NewCompilationLock), )
View Source
var (
StandardCFlags = []string{"-O2", "--target=bpf", "-std=gnu99",
"-nostdinc",
"-ftrap-function=__undefined_trap",
"-Wall", "-Wextra", "-Werror", "-Wshadow",
"-Wno-address-of-packed-member",
"-Wno-unknown-warning-option",
"-Wno-gnu-variable-sized-type-not-at-end",
"-Wimplicit-int-conversion",
"-Wenum-conversion",
"-Wimplicit-fallthrough"}
)
Functions ¶
func DetachXDP ¶ added in v1.15.0
DetachXDP removes an XDP program from a network interface. On kernels before 4.15, always removes the XDP program regardless of progName.
bpffsBase is typically /sys/fs/bpf/cilium, but can be overridden to a tempdir during tests.
func DeviceHasSKBProgramLoaded ¶ added in v1.16.0
DeviceHasSKBProgramLoaded returns true if the given device has a tc(x) program attached.
If checkEgress is true, returns true if there's both an ingress and egress program attached.
func NewCompilationLock ¶ added in v1.16.0
func NewCompilationLock() types.CompilationLock
Types ¶
type Params ¶ added in v1.16.0
type Params struct {
cell.In
Logger *slog.Logger
Sysctl sysctl.Sysctl
Prefilter datapath.PreFilter
CompilationLock datapath.CompilationLock
ConfigWriter datapath.ConfigWriter
NodeConfigNotifier *manager.NodeConfigNotifier
// Force map initialisation before loader. You should not use these otherwise.
// Some of the entries in this slice may be nil.
BpfMaps []bpf.BpfMap `group:"bpf-maps"`
}
Source Files
¶
Click to show internal directories.
Click to hide internal directories.