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.Config(DefaultConfig), cell.Provide(NewLoader), cell.Provide(newCompilationLock), )
View Source
var DefaultConfig = Config{
DeriveMasqIPAddrFromDevice: "",
}
Functions ¶
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 NewLoaderForTest ¶
Types ¶
type Config ¶ added in v1.16.0
type Config struct { // DeriveMasqIPAddrFromDevice specifies which device's IP addr is used for BPF masquerade. // This is a hidden option and by default not set. Only needed in very specific setups // with ECMP and multiple devices. // See commit d204d789746b1389cc2ba02fdd55b81a2f55b76e for original context. // This can be removed once https://github.com/cilium/cilium/issues/17158 is resolved. DeriveMasqIPAddrFromDevice string }
type Params ¶ added in v1.16.0
type Params struct { cell.In Config Config DB *statedb.DB NodeAddrs statedb.Table[tables.NodeAddress] Sysctl sysctl.Sysctl Devices statedb.Table[*tables.Device] Prefilter datapath.PreFilter CompilationLock datapath.CompilationLock ConfigWriter datapath.ConfigWriter LocalNodeConfig datapath.LocalNodeConfiguration NodeHandler datapath.NodeHandler }
Source Files ¶
Click to show internal directories.
Click to hide internal directories.