Documentation ¶
Overview ¶
+groupName=maps
Index ¶
- Constants
- Variables
- func CreateSockRevNat4Map() error
- func CreateSockRevNat6Map() error
- func Init(params InitParams)
- func InitMaglevMaps(ipv4 bool, ipv6 bool) error
- type Affinity4Key
- type Affinity6Key
- type AffinityMatchKey
- func (in *AffinityMatchKey) DeepCopy() *AffinityMatchKey
- func (in *AffinityMatchKey) DeepCopyInto(out *AffinityMatchKey)
- func (in *AffinityMatchKey) DeepCopyMapKey() bpf.MapKey
- func (k *AffinityMatchKey) GetKeyPtr() unsafe.Pointer
- func (k *AffinityMatchKey) NewValue() bpf.MapValue
- func (k *AffinityMatchKey) String() string
- func (k *AffinityMatchKey) ToHost() *AffinityMatchKey
- func (k *AffinityMatchKey) ToNetwork() *AffinityMatchKey
- type AffinityMatchValue
- type AffinityValue
- type Backend
- type Backend4
- type Backend4Key
- func (in *Backend4Key) DeepCopy() *Backend4Key
- func (in *Backend4Key) DeepCopyInto(out *Backend4Key)
- func (in *Backend4Key) DeepCopyMapKey() bpf.MapKey
- func (k *Backend4Key) GetID() loadbalancer.BackendID
- func (k *Backend4Key) GetKeyPtr() unsafe.Pointer
- func (k *Backend4Key) Map() *bpf.Map
- func (k *Backend4Key) NewValue() bpf.MapValue
- func (k *Backend4Key) SetID(id loadbalancer.BackendID)
- func (k *Backend4Key) String() string
- type Backend4KeyV2
- func (in *Backend4KeyV2) DeepCopy() *Backend4KeyV2
- func (in *Backend4KeyV2) DeepCopyInto(out *Backend4KeyV2)
- func (in *Backend4KeyV2) DeepCopyMapKey() bpf.MapKey
- func (k *Backend4KeyV2) GetID() loadbalancer.BackendID
- func (k *Backend4KeyV2) GetKeyPtr() unsafe.Pointer
- func (k *Backend4KeyV2) Map() *bpf.Map
- func (k *Backend4KeyV2) NewValue() bpf.MapValue
- func (k *Backend4KeyV2) SetID(id loadbalancer.BackendID)
- func (k *Backend4KeyV2) String() string
- type Backend4V2
- type Backend4Value
- func (in *Backend4Value) DeepCopy() *Backend4Value
- func (in *Backend4Value) DeepCopyInto(out *Backend4Value)
- func (in *Backend4Value) DeepCopyMapValue() bpf.MapValue
- func (b *Backend4Value) GetAddress() net.IP
- func (b *Backend4Value) GetPort() uint16
- func (v *Backend4Value) GetValuePtr() unsafe.Pointer
- func (v *Backend4Value) String() string
- func (v *Backend4Value) ToHost() BackendValue
- func (v *Backend4Value) ToNetwork() BackendValue
- type Backend6
- type Backend6Key
- func (in *Backend6Key) DeepCopy() *Backend6Key
- func (in *Backend6Key) DeepCopyInto(out *Backend6Key)
- func (in *Backend6Key) DeepCopyMapKey() bpf.MapKey
- func (k *Backend6Key) GetID() loadbalancer.BackendID
- func (k *Backend6Key) GetKeyPtr() unsafe.Pointer
- func (k *Backend6Key) Map() *bpf.Map
- func (k *Backend6Key) NewValue() bpf.MapValue
- func (k *Backend6Key) SetID(id loadbalancer.BackendID)
- func (k *Backend6Key) String() string
- type Backend6KeyV2
- func (in *Backend6KeyV2) DeepCopy() *Backend6KeyV2
- func (in *Backend6KeyV2) DeepCopyInto(out *Backend6KeyV2)
- func (in *Backend6KeyV2) DeepCopyMapKey() bpf.MapKey
- func (k *Backend6KeyV2) GetID() loadbalancer.BackendID
- func (k *Backend6KeyV2) GetKeyPtr() unsafe.Pointer
- func (k *Backend6KeyV2) Map() *bpf.Map
- func (k *Backend6KeyV2) NewValue() bpf.MapValue
- func (k *Backend6KeyV2) SetID(id loadbalancer.BackendID)
- func (k *Backend6KeyV2) String() string
- type Backend6V2
- type Backend6Value
- func (in *Backend6Value) DeepCopy() *Backend6Value
- func (in *Backend6Value) DeepCopyInto(out *Backend6Value)
- func (in *Backend6Value) DeepCopyMapValue() bpf.MapValue
- func (b *Backend6Value) GetAddress() net.IP
- func (b *Backend6Value) GetPort() uint16
- func (v *Backend6Value) GetValuePtr() unsafe.Pointer
- func (v *Backend6Value) String() string
- func (v *Backend6Value) ToHost() BackendValue
- func (v *Backend6Value) ToNetwork() BackendValue
- type BackendIDByServiceIDSet
- type BackendKey
- type BackendValue
- type InitParams
- type LBBPFMap
- func (*LBBPFMap) AddAffinityMatch(revNATID uint16, backendID uint16) error
- func (*LBBPFMap) AddBackend(id uint16, ip net.IP, port uint16, ipv6 bool) error
- func (*LBBPFMap) DeleteAffinityMatch(revNATID uint16, backendID uint16) error
- func (*LBBPFMap) DeleteBackendByID(id uint16, ipv6 bool) error
- func (*LBBPFMap) DeleteService(svc loadbalancer.L3n4AddrID, backendCount int, useMaglev bool) error
- func (*LBBPFMap) DumpAffinityMatches() (BackendIDByServiceIDSet, error)
- func (*LBBPFMap) DumpBackendMaps() ([]*loadbalancer.Backend, error)
- func (*LBBPFMap) DumpServiceMaps() ([]*loadbalancer.SVC, []error)
- func (*LBBPFMap) DumpSourceRanges(ipv6 bool) (SourceRangeSetByServiceID, error)
- func (*LBBPFMap) IsMaglevLookupTableRecreated(ipv6 bool) bool
- func (*LBBPFMap) UpdateSourceRanges(revNATID uint16, prevSourceRanges []*cidr.CIDR, sourceRanges []*cidr.CIDR, ...) error
- func (lbmap *LBBPFMap) UpsertMaglevLookupTable(svcID uint16, backends map[string]uint16, ipv6 bool) error
- func (lbmap *LBBPFMap) UpsertService(p *UpsertServiceParams) error
- type MaglevInnerKey
- func (in *MaglevInnerKey) DeepCopy() *MaglevInnerKey
- func (in *MaglevInnerKey) DeepCopyInto(out *MaglevInnerKey)
- func (in *MaglevInnerKey) DeepCopyMapKey() bpf.MapKey
- func (k *MaglevInnerKey) GetKeyPtr() unsafe.Pointer
- func (k *MaglevInnerKey) NewValue() bpf.MapValue
- func (k *MaglevInnerKey) String() string
- type MaglevInnerVal
- type MaglevOuterKey
- func (in *MaglevOuterKey) DeepCopy() *MaglevOuterKey
- func (in *MaglevOuterKey) DeepCopyInto(out *MaglevOuterKey)
- func (in *MaglevOuterKey) DeepCopyMapKey() bpf.MapKey
- func (k *MaglevOuterKey) GetKeyPtr() unsafe.Pointer
- func (k *MaglevOuterKey) NewValue() bpf.MapValue
- func (k *MaglevOuterKey) String() string
- func (k *MaglevOuterKey) ToNetwork() *MaglevOuterKey
- type MaglevOuterVal
- type RevNat4Key
- func (in *RevNat4Key) DeepCopy() *RevNat4Key
- func (in *RevNat4Key) DeepCopyInto(out *RevNat4Key)
- func (in *RevNat4Key) DeepCopyMapKey() bpf.MapKey
- func (k *RevNat4Key) GetKey() uint16
- func (k *RevNat4Key) GetKeyPtr() unsafe.Pointer
- func (k *RevNat4Key) Map() *bpf.Map
- func (k *RevNat4Key) NewValue() bpf.MapValue
- func (k *RevNat4Key) String() string
- func (k *RevNat4Key) ToHost() RevNatKey
- func (k *RevNat4Key) ToNetwork() RevNatKey
- type RevNat4Value
- func (in *RevNat4Value) DeepCopy() *RevNat4Value
- func (in *RevNat4Value) DeepCopyInto(out *RevNat4Value)
- func (in *RevNat4Value) DeepCopyMapValue() bpf.MapValue
- func (v *RevNat4Value) GetValuePtr() unsafe.Pointer
- func (v *RevNat4Value) String() string
- func (k *RevNat4Value) ToHost() RevNatValue
- func (v *RevNat4Value) ToNetwork() RevNatValue
- type RevNat6Key
- func (in *RevNat6Key) DeepCopy() *RevNat6Key
- func (in *RevNat6Key) DeepCopyInto(out *RevNat6Key)
- func (in *RevNat6Key) DeepCopyMapKey() bpf.MapKey
- func (v *RevNat6Key) GetKey() uint16
- func (v *RevNat6Key) GetKeyPtr() unsafe.Pointer
- func (v *RevNat6Key) Map() *bpf.Map
- func (v *RevNat6Key) NewValue() bpf.MapValue
- func (v *RevNat6Key) String() string
- func (v *RevNat6Key) ToHost() RevNatKey
- func (v *RevNat6Key) ToNetwork() RevNatKey
- type RevNat6Value
- func (in *RevNat6Value) DeepCopy() *RevNat6Value
- func (in *RevNat6Value) DeepCopyInto(out *RevNat6Value)
- func (in *RevNat6Value) DeepCopyMapValue() bpf.MapValue
- func (v *RevNat6Value) GetValuePtr() unsafe.Pointer
- func (v *RevNat6Value) String() string
- func (v *RevNat6Value) ToHost() RevNatValue
- func (v *RevNat6Value) ToNetwork() RevNatValue
- type RevNatKey
- type RevNatValue
- type Service4Key
- func (in *Service4Key) DeepCopy() *Service4Key
- func (in *Service4Key) DeepCopyInto(out *Service4Key)
- func (in *Service4Key) DeepCopyMapKey() bpf.MapKey
- func (k *Service4Key) GetAddress() net.IP
- func (k *Service4Key) GetBackendSlot() int
- func (k *Service4Key) GetKeyPtr() unsafe.Pointer
- func (k *Service4Key) GetPort() uint16
- func (k *Service4Key) GetScope() uint8
- func (k *Service4Key) IsIPv6() bool
- func (k *Service4Key) IsSurrogate() bool
- func (k *Service4Key) Map() *bpf.Map
- func (k *Service4Key) MapDelete() error
- func (k *Service4Key) NewValue() bpf.MapValue
- func (k *Service4Key) RevNatValue() RevNatValue
- func (k *Service4Key) SetBackendSlot(slot int)
- func (k *Service4Key) SetScope(scope uint8)
- func (k *Service4Key) String() string
- func (k *Service4Key) ToHost() ServiceKey
- func (k *Service4Key) ToNetwork() ServiceKey
- type Service4Value
- func (in *Service4Value) DeepCopy() *Service4Value
- func (in *Service4Value) DeepCopyInto(out *Service4Value)
- func (in *Service4Value) DeepCopyMapValue() bpf.MapValue
- func (s *Service4Value) GetBackendID() loadbalancer.BackendID
- func (s *Service4Value) GetCount() int
- func (s *Service4Value) GetFlags() uint16
- func (s *Service4Value) GetRevNat() int
- func (s *Service4Value) GetValuePtr() unsafe.Pointer
- func (s *Service4Value) RevNatKey() RevNatKey
- func (s *Service4Value) SetBackendID(id loadbalancer.BackendID)
- func (s *Service4Value) SetCount(count int)
- func (s *Service4Value) SetFlags(flags uint16)
- func (s *Service4Value) SetRevNat(id int)
- func (s *Service4Value) SetSessionAffinityTimeoutSec(t uint32)
- func (s *Service4Value) String() string
- func (s *Service4Value) ToHost() ServiceValue
- func (s *Service4Value) ToNetwork() ServiceValue
- type Service6Key
- func (in *Service6Key) DeepCopy() *Service6Key
- func (in *Service6Key) DeepCopyInto(out *Service6Key)
- func (in *Service6Key) DeepCopyMapKey() bpf.MapKey
- func (k *Service6Key) GetAddress() net.IP
- func (k *Service6Key) GetBackendSlot() int
- func (k *Service6Key) GetKeyPtr() unsafe.Pointer
- func (k *Service6Key) GetPort() uint16
- func (k *Service6Key) GetScope() uint8
- func (k *Service6Key) IsIPv6() bool
- func (k *Service6Key) IsSurrogate() bool
- func (k *Service6Key) Map() *bpf.Map
- func (k *Service6Key) MapDelete() error
- func (k *Service6Key) NewValue() bpf.MapValue
- func (k *Service6Key) RevNatValue() RevNatValue
- func (k *Service6Key) SetBackendSlot(slot int)
- func (k *Service6Key) SetScope(scope uint8)
- func (k *Service6Key) String() string
- func (k *Service6Key) ToHost() ServiceKey
- func (k *Service6Key) ToNetwork() ServiceKey
- type Service6Value
- func (in *Service6Value) DeepCopy() *Service6Value
- func (in *Service6Value) DeepCopyInto(out *Service6Value)
- func (in *Service6Value) DeepCopyMapValue() bpf.MapValue
- func (s *Service6Value) GetBackendID() loadbalancer.BackendID
- func (s *Service6Value) GetCount() int
- func (s *Service6Value) GetFlags() uint16
- func (s *Service6Value) GetRevNat() int
- func (s *Service6Value) GetValuePtr() unsafe.Pointer
- func (s *Service6Value) RevNatKey() RevNatKey
- func (s *Service6Value) SetBackendID(id loadbalancer.BackendID)
- func (s *Service6Value) SetCount(count int)
- func (s *Service6Value) SetFlags(flags uint16)
- func (s *Service6Value) SetRevNat(id int)
- func (s *Service6Value) SetSessionAffinityTimeoutSec(t uint32)
- func (s *Service6Value) String() string
- func (s *Service6Value) ToHost() ServiceValue
- func (s *Service6Value) ToNetwork() ServiceValue
- type ServiceKey
- type ServiceValue
- type SockRevNat4Key
- func (in *SockRevNat4Key) DeepCopy() *SockRevNat4Key
- func (in *SockRevNat4Key) DeepCopyInto(out *SockRevNat4Key)
- func (in *SockRevNat4Key) DeepCopyMapKey() bpf.MapKey
- func (k *SockRevNat4Key) GetKeyPtr() unsafe.Pointer
- func (k SockRevNat4Key) NewValue() bpf.MapValue
- func (k *SockRevNat4Key) String() string
- type SockRevNat4Value
- type SockRevNat6Key
- func (in *SockRevNat6Key) DeepCopy() *SockRevNat6Key
- func (in *SockRevNat6Key) DeepCopyInto(out *SockRevNat6Key)
- func (in *SockRevNat6Key) DeepCopyMapKey() bpf.MapKey
- func (k *SockRevNat6Key) GetKeyPtr() unsafe.Pointer
- func (k SockRevNat6Key) NewValue() bpf.MapValue
- func (k *SockRevNat6Key) String() string
- type SockRevNat6Value
- type SourceRangeKey
- type SourceRangeKey4
- func (in *SourceRangeKey4) DeepCopy() *SourceRangeKey4
- func (in *SourceRangeKey4) DeepCopyInto(out *SourceRangeKey4)
- func (in *SourceRangeKey4) DeepCopyMapKey() bpf.MapKey
- func (k *SourceRangeKey4) GetCIDR() *cidr.CIDR
- func (k *SourceRangeKey4) GetKeyPtr() unsafe.Pointer
- func (k *SourceRangeKey4) GetRevNATID() uint16
- func (k *SourceRangeKey4) NewValue() bpf.MapValue
- func (k *SourceRangeKey4) String() string
- func (k *SourceRangeKey4) ToHost() SourceRangeKey
- func (k *SourceRangeKey4) ToNetwork() SourceRangeKey
- type SourceRangeKey6
- func (in *SourceRangeKey6) DeepCopy() *SourceRangeKey6
- func (in *SourceRangeKey6) DeepCopyInto(out *SourceRangeKey6)
- func (in *SourceRangeKey6) DeepCopyMapKey() bpf.MapKey
- func (k *SourceRangeKey6) GetCIDR() *cidr.CIDR
- func (k *SourceRangeKey6) GetKeyPtr() unsafe.Pointer
- func (k *SourceRangeKey6) GetRevNATID() uint16
- func (k *SourceRangeKey6) NewValue() bpf.MapValue
- func (k *SourceRangeKey6) String() string
- func (k *SourceRangeKey6) ToHost() SourceRangeKey
- func (k *SourceRangeKey6) ToNetwork() SourceRangeKey
- type SourceRangeSetByServiceID
- type SourceRangeValue
- type UpsertServiceParams
Constants ¶
const ( AffinityMatchMapName = "cilium_lb_affinity_match" Affinity4MapName = "cilium_lb4_affinity" Affinity6MapName = "cilium_lb6_affinity" )
const ( // HealthProbe4MapName is the health datapath map name HealthProbe4MapName = "cilium_lb4_health" // SockRevNat4MapName is the BPF map name. SockRevNat4MapName = "cilium_lb4_reverse_sk" // SockRevNat4MapSize is the maximum number of entries in the BPF map. SockRevNat4MapSize = 256 * 1024 // Service4MapV2Name is the name of the IPv4 LB Services v2 BPF map. Service4MapV2Name = "cilium_lb4_services_v2" // Backend4MapName is the name of the IPv4 LB backends BPF map. Backend4MapName = "cilium_lb4_backends" // Backend4MapNameV2 is the name of the IPv4 LB backends v2 BPF map. Backend4MapNameV2 = "cilium_lb4_backends_v2" // RevNat4MapName is the name of the IPv4 LB reverse NAT BPF map. RevNat4MapName = "cilium_lb4_reverse_nat" )
const ( // HealthProbe6MapName is the health datapath map name HealthProbe6MapName = "cilium_lb6_health" // SockRevNat6MapName is the BPF map name. SockRevNat6MapName = "cilium_lb6_reverse_sk" // SockRevNat6MapSize is the maximum number of entries in the BPF map. SockRevNat6MapSize = 256 * 1024 // Service6MapV2Name is the name of the IPv6 LB Services v2 BPF map. Service6MapV2Name = "cilium_lb6_services_v2" // Backend6MapName is the name of the IPv6 LB backends BPF map. Backend6MapName = "cilium_lb6_backends" // Backend6MapV2Name is the name of the IPv6 LB backends v2 BPF map. Backend6MapNameV2 = "cilium_lb6_backends_v2" // RevNat6MapName is the name of the IPv6 LB reverse NAT BPF map. RevNat6MapName = "cilium_lb6_reverse_nat" )
const ( // Both inner maps are not being pinned into BPF fs. MaglevInner4MapName = "cilium_lb4_maglev_inner" MaglevInner6MapName = "cilium_lb6_maglev_inner" // Both outer maps are pinned though given we need to attach // inner maps into them. MaglevOuter4MapName = "cilium_lb4_maglev" MaglevOuter6MapName = "cilium_lb6_maglev" )
const ( SourceRange4MapName = "cilium_lb4_source_range" SourceRange6MapName = "cilium_lb6_source_range" )
const SizeofSockRevNat6Key = int(unsafe.Sizeof(SockRevNat6Key{}))
SizeofSockRevNat6Key is the size of type SockRevNat6Key.
const SizeofSockRevNat6Value = int(unsafe.Sizeof(SockRevNat6Value{}))
SizeofSockRevNat6Value is the size of type SockRevNat6Value.
Variables ¶
var ( // AffinityMatchMap is the BPF map to implement session affinity. AffinityMatchMap *bpf.Map Affinity4Map *bpf.Map Affinity6Map *bpf.Map )
var ( // MaxSockRevNat4MapEntries is the maximum number of entries in the BPF // map. It is set by Init(), but unit tests use the initial value below. MaxSockRevNat4MapEntries = SockRevNat4MapSize // Service4MapV2 is the IPv4 LB Services v2 BPF map. Service4MapV2 *bpf.Map // Backend4Map is the IPv4 LB backends BPF map. Backend4Map *bpf.Map // Backend4MapV2 is the IPv4 LB backends v2 BPF map. Backend4MapV2 *bpf.Map // RevNat4Map is the IPv4 LB reverse NAT BPF map. RevNat4Map *bpf.Map )
var ( // MaxSockRevNat6MapEntries is the maximum number of entries in the BPF // map. It is set by Init(), but unit tests use the initial value below. MaxSockRevNat6MapEntries = SockRevNat6MapSize // Service6MapV2 is the IPv6 LB Services v2 BPF map. Service6MapV2 *bpf.Map // Backend6Map is the IPv6 LB backends BPF map. Backend6Map *bpf.Map // Backend6MapV2 is the IPv6 LB backends v2 BPF map. Backend6MapV2 *bpf.Map // RevNat6Map is the IPv6 LB reverse NAT BPF map. RevNat6Map *bpf.Map )
var ( MaglevOuter4Map *bpf.Map MaglevOuter6Map *bpf.Map )
var ( // SourceRange4Map is the BPF map for storing IPv4 service source ranges to // check if option.Config.EnableSVCSourceRangeCheck is enabled. SourceRange4Map *bpf.Map // SourceRange6Map is the BPF map for storing IPv6 service source ranges to // check if option.Config.EnableSVCSourceRangeCheck is enabled. SourceRange6Map *bpf.Map )
var ( // MaxEntries contains the maximum number of entries that are allowed // in Cilium LB service, backend and affinity maps. MaxEntries = 65536 )
Functions ¶
func CreateSockRevNat4Map ¶ added in v0.15.7
func CreateSockRevNat4Map() error
CreateSockRevNat4Map creates the reverse NAT sock map.
func CreateSockRevNat6Map ¶ added in v0.15.7
func CreateSockRevNat6Map() error
CreateSockRevNat6Map creates the reverse NAT sock map.
func Init ¶ added in v0.15.7
func Init(params InitParams)
Init updates the map info defaults for sock rev nat {4,6} and LB maps and then initializes all LB-related maps.
func InitMaglevMaps ¶ added in v0.15.7
Types ¶
type Affinity4Key ¶ added in v0.15.7
type Affinity4Key struct { ClientID uint64 `align:"client_id"` RevNATID uint16 `align:"rev_nat_id"` NetNSCookie uint8 `align:"netns_cookie"` Pad1 uint8 `align:"pad1"` Pad2 uint32 `align:"pad2"` }
Affinity4Key is the Go representation of lb4_affinity_key +k8s:deepcopy-gen=true +k8s:deepcopy-gen:interfaces=github.com/cilium/cilium/pkg/bpf.MapKey
func (*Affinity4Key) DeepCopy ¶ added in v1.8.0
func (in *Affinity4Key) DeepCopy() *Affinity4Key
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Affinity4Key.
func (*Affinity4Key) DeepCopyInto ¶ added in v1.8.0
func (in *Affinity4Key) DeepCopyInto(out *Affinity4Key)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*Affinity4Key) DeepCopyMapKey ¶ added in v1.8.0
func (in *Affinity4Key) DeepCopyMapKey() bpf.MapKey
DeepCopyMapKey is an autogenerated deepcopy function, copying the receiver, creating a new bpf.MapKey.
func (*Affinity4Key) GetKeyPtr ¶ added in v1.8.0
func (k *Affinity4Key) GetKeyPtr() unsafe.Pointer
GetKeyPtr returns the unsafe pointer to the BPF key
func (Affinity4Key) NewValue ¶ added in v1.8.0
func (k Affinity4Key) NewValue() bpf.MapValue
NewValue returns a new empty instance of the structure representing the BPF map value.
func (*Affinity4Key) String ¶ added in v0.15.7
func (k *Affinity4Key) String() string
String converts the key into a human readable string format.
type Affinity6Key ¶ added in v0.15.7
type Affinity6Key struct { ClientID types.IPv6 `align:"client_id"` RevNATID uint16 `align:"rev_nat_id"` NetNSCookie uint8 `align:"netns_cookie"` Pad1 uint8 `align:"pad1"` Pad2 uint32 `align:"pad2"` }
Affinity6Key is the Go representation of lb6_affinity_key +k8s:deepcopy-gen=true +k8s:deepcopy-gen:interfaces=github.com/cilium/cilium/pkg/bpf.MapKey
func (*Affinity6Key) DeepCopy ¶ added in v1.8.0
func (in *Affinity6Key) DeepCopy() *Affinity6Key
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Affinity6Key.
func (*Affinity6Key) DeepCopyInto ¶ added in v1.8.0
func (in *Affinity6Key) DeepCopyInto(out *Affinity6Key)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*Affinity6Key) DeepCopyMapKey ¶ added in v1.8.0
func (in *Affinity6Key) DeepCopyMapKey() bpf.MapKey
DeepCopyMapKey is an autogenerated deepcopy function, copying the receiver, creating a new bpf.MapKey.
func (*Affinity6Key) GetKeyPtr ¶ added in v1.8.0
func (k *Affinity6Key) GetKeyPtr() unsafe.Pointer
GetKeyPtr returns the unsafe pointer to the BPF key
func (Affinity6Key) NewValue ¶ added in v1.8.0
func (k Affinity6Key) NewValue() bpf.MapValue
NewValue returns a new empty instance of the structure representing the BPF map value.
func (*Affinity6Key) String ¶ added in v0.15.7
func (k *Affinity6Key) String() string
String converts the key into a human readable string format.
type AffinityMatchKey ¶ added in v0.15.7
type AffinityMatchKey struct { BackendID uint32 `align:"backend_id"` RevNATID uint16 `align:"rev_nat_id"` Pad uint16 `align:"pad"` }
+k8s:deepcopy-gen=true +k8s:deepcopy-gen:interfaces=github.com/cilium/cilium/pkg/bpf.MapKey
func NewAffinityMatchKey ¶ added in v0.15.7
func NewAffinityMatchKey(revNATID uint16, backendID uint32) *AffinityMatchKey
NewAffinityMatchKey creates the AffinityMatch key
func (*AffinityMatchKey) DeepCopy ¶ added in v1.8.0
func (in *AffinityMatchKey) DeepCopy() *AffinityMatchKey
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AffinityMatchKey.
func (*AffinityMatchKey) DeepCopyInto ¶ added in v1.8.0
func (in *AffinityMatchKey) DeepCopyInto(out *AffinityMatchKey)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*AffinityMatchKey) DeepCopyMapKey ¶ added in v1.8.0
func (in *AffinityMatchKey) DeepCopyMapKey() bpf.MapKey
DeepCopyMapKey is an autogenerated deepcopy function, copying the receiver, creating a new bpf.MapKey.
func (*AffinityMatchKey) GetKeyPtr ¶ added in v1.8.0
func (k *AffinityMatchKey) GetKeyPtr() unsafe.Pointer
GetKeyPtr returns the unsafe pointer to the BPF key
func (*AffinityMatchKey) NewValue ¶ added in v1.8.0
func (k *AffinityMatchKey) NewValue() bpf.MapValue
NewValue returns a new empty instance of the structure representing the BPF map value
func (*AffinityMatchKey) String ¶ added in v0.15.7
func (k *AffinityMatchKey) String() string
String converts the key into a human readable string format
func (*AffinityMatchKey) ToHost ¶ added in v0.15.7
func (k *AffinityMatchKey) ToHost() *AffinityMatchKey
ToHost returns the key in the host byte order
func (*AffinityMatchKey) ToNetwork ¶ added in v0.15.7
func (k *AffinityMatchKey) ToNetwork() *AffinityMatchKey
ToNetwork returns the key in the network byte order
type AffinityMatchValue ¶ added in v0.15.7
type AffinityMatchValue struct {
Pad uint8 `align:"pad"`
}
+k8s:deepcopy-gen=true +k8s:deepcopy-gen:interfaces=github.com/cilium/cilium/pkg/bpf.MapValue
func (*AffinityMatchValue) DeepCopy ¶ added in v1.8.0
func (in *AffinityMatchValue) DeepCopy() *AffinityMatchValue
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AffinityMatchValue.
func (*AffinityMatchValue) DeepCopyInto ¶ added in v1.8.0
func (in *AffinityMatchValue) DeepCopyInto(out *AffinityMatchValue)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*AffinityMatchValue) DeepCopyMapValue ¶ added in v1.8.0
func (in *AffinityMatchValue) DeepCopyMapValue() bpf.MapValue
DeepCopyMapValue is an autogenerated deepcopy function, copying the receiver, creating a new bpf.MapValue.
func (*AffinityMatchValue) GetValuePtr ¶ added in v1.8.0
func (v *AffinityMatchValue) GetValuePtr() unsafe.Pointer
GetValuePtr returns the unsafe pointer to the BPF value
func (*AffinityMatchValue) String ¶ added in v0.15.7
func (v *AffinityMatchValue) String() string
String converts the value into a human readable string format
type AffinityValue ¶ added in v0.15.7
type AffinityValue struct { LastUsed uint64 `align:"last_used"` BackendID uint32 `align:"backend_id"` Pad uint32 `align:"pad"` }
AffinityValue is the Go representing of lb_affinity_value +k8s:deepcopy-gen=true +k8s:deepcopy-gen:interfaces=github.com/cilium/cilium/pkg/bpf.MapValue
func (*AffinityValue) DeepCopy ¶ added in v1.8.0
func (in *AffinityValue) DeepCopy() *AffinityValue
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AffinityValue.
func (*AffinityValue) DeepCopyInto ¶ added in v1.8.0
func (in *AffinityValue) DeepCopyInto(out *AffinityValue)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*AffinityValue) DeepCopyMapValue ¶ added in v1.8.0
func (in *AffinityValue) DeepCopyMapValue() bpf.MapValue
DeepCopyMapValue is an autogenerated deepcopy function, copying the receiver, creating a new bpf.MapValue.
func (*AffinityValue) GetValuePtr ¶ added in v1.8.0
func (v *AffinityValue) GetValuePtr() unsafe.Pointer
GetValuePtr returns the unsafe pointer to the BPF value
func (*AffinityValue) String ¶ added in v0.15.7
func (v *AffinityValue) String() string
String converts the value into a human readable string format.
type Backend ¶ added in v0.15.7
type Backend interface { // Return the BPF map matching the type Map() *bpf.Map // Get key of the backend entry GetKey() BackendKey // Get value of the backend entry GetValue() BackendValue }
Backend is the interface describing protocol independent backend used by services v2.
type Backend4 ¶ added in v0.15.7
type Backend4 struct { Key *Backend4Key Value *Backend4Value }
func NewBackend4 ¶ added in v1.5.0
func (*Backend4) GetKey ¶ added in v0.15.7
func (b *Backend4) GetKey() BackendKey
func (*Backend4) GetValue ¶ added in v0.15.7
func (b *Backend4) GetValue() BackendValue
type Backend4Key ¶ added in v0.15.7
type Backend4Key struct {
ID loadbalancer.BackendID
}
+k8s:deepcopy-gen=true +k8s:deepcopy-gen:interfaces=github.com/cilium/cilium/pkg/bpf.MapKey
func NewBackend4Key ¶ added in v1.5.0
func NewBackend4Key(id loadbalancer.BackendID) *Backend4Key
func (*Backend4Key) DeepCopy ¶ added in v1.5.1
func (in *Backend4Key) DeepCopy() *Backend4Key
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Backend4Key.
func (*Backend4Key) DeepCopyInto ¶ added in v1.5.1
func (in *Backend4Key) DeepCopyInto(out *Backend4Key)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*Backend4Key) DeepCopyMapKey ¶ added in v1.5.1
func (in *Backend4Key) DeepCopyMapKey() bpf.MapKey
DeepCopyMapKey is an autogenerated deepcopy function, copying the receiver, creating a new bpf.MapKey.
func (*Backend4Key) GetID ¶ added in v0.15.7
func (k *Backend4Key) GetID() loadbalancer.BackendID
func (*Backend4Key) GetKeyPtr ¶ added in v1.5.0
func (k *Backend4Key) GetKeyPtr() unsafe.Pointer
func (*Backend4Key) Map ¶ added in v0.15.7
func (k *Backend4Key) Map() *bpf.Map
func (*Backend4Key) NewValue ¶ added in v1.5.0
func (k *Backend4Key) NewValue() bpf.MapValue
func (*Backend4Key) SetID ¶ added in v0.15.7
func (k *Backend4Key) SetID(id loadbalancer.BackendID)
func (*Backend4Key) String ¶ added in v0.15.7
func (k *Backend4Key) String() string
type Backend4KeyV2 ¶ added in v1.10.5
type Backend4KeyV2 struct {
ID uint32
}
+k8s:deepcopy-gen=true +k8s:deepcopy-gen:interfaces=github.com/cilium/cilium/pkg/bpf.MapKey
func (*Backend4KeyV2) DeepCopy ¶ added in v1.10.5
func (in *Backend4KeyV2) DeepCopy() *Backend4KeyV2
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Backend4KeyV2.
func (*Backend4KeyV2) DeepCopyInto ¶ added in v1.10.5
func (in *Backend4KeyV2) DeepCopyInto(out *Backend4KeyV2)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*Backend4KeyV2) DeepCopyMapKey ¶ added in v1.10.5
func (in *Backend4KeyV2) DeepCopyMapKey() bpf.MapKey
DeepCopyMapKey is an autogenerated deepcopy function, copying the receiver, creating a new bpf.MapKey.
func (*Backend4KeyV2) GetID ¶ added in v1.10.5
func (k *Backend4KeyV2) GetID() loadbalancer.BackendID
func (*Backend4KeyV2) GetKeyPtr ¶ added in v1.10.5
func (k *Backend4KeyV2) GetKeyPtr() unsafe.Pointer
func (*Backend4KeyV2) Map ¶ added in v1.10.5
func (k *Backend4KeyV2) Map() *bpf.Map
func (*Backend4KeyV2) NewValue ¶ added in v1.10.5
func (k *Backend4KeyV2) NewValue() bpf.MapValue
func (*Backend4KeyV2) SetID ¶ added in v1.10.5
func (k *Backend4KeyV2) SetID(id loadbalancer.BackendID)
func (*Backend4KeyV2) String ¶ added in v1.10.5
func (k *Backend4KeyV2) String() string
type Backend4V2 ¶ added in v0.15.7
type Backend4V2 struct { Key *Backend4KeyV2 Value *Backend4Value }
func (*Backend4V2) GetKey ¶ added in v0.15.7
func (b *Backend4V2) GetKey() BackendKey
func (*Backend4V2) GetValue ¶ added in v0.15.7
func (b *Backend4V2) GetValue() BackendValue
func (*Backend4V2) Map ¶ added in v0.15.7
func (b *Backend4V2) Map() *bpf.Map
type Backend4Value ¶ added in v0.15.7
type Backend4Value struct { Address types.IPv4 `align:"address"` Port uint16 `align:"port"` Proto u8proto.U8proto `align:"proto"` Pad uint8 `align:"pad"` }
Backend4Value must match 'struct lb4_backend' in "bpf/lib/common.h". +k8s:deepcopy-gen=true +k8s:deepcopy-gen:interfaces=github.com/cilium/cilium/pkg/bpf.MapValue
func NewBackend4Value ¶ added in v0.15.7
func (*Backend4Value) DeepCopy ¶ added in v1.5.1
func (in *Backend4Value) DeepCopy() *Backend4Value
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Backend4Value.
func (*Backend4Value) DeepCopyInto ¶ added in v1.5.1
func (in *Backend4Value) DeepCopyInto(out *Backend4Value)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*Backend4Value) DeepCopyMapValue ¶ added in v1.5.1
func (in *Backend4Value) DeepCopyMapValue() bpf.MapValue
DeepCopyMapValue is an autogenerated deepcopy function, copying the receiver, creating a new bpf.MapValue.
func (*Backend4Value) GetAddress ¶ added in v0.15.7
func (b *Backend4Value) GetAddress() net.IP
func (*Backend4Value) GetPort ¶ added in v0.15.7
func (b *Backend4Value) GetPort() uint16
func (*Backend4Value) GetValuePtr ¶ added in v1.5.0
func (v *Backend4Value) GetValuePtr() unsafe.Pointer
func (*Backend4Value) String ¶ added in v0.15.7
func (v *Backend4Value) String() string
func (*Backend4Value) ToHost ¶ added in v0.15.7
func (v *Backend4Value) ToHost() BackendValue
ToHost converts Backend4Value to host byte order.
func (*Backend4Value) ToNetwork ¶ added in v0.15.7
func (v *Backend4Value) ToNetwork() BackendValue
type Backend6 ¶ added in v0.15.7
type Backend6 struct { Key *Backend6Key Value *Backend6Value }
func NewBackend6 ¶ added in v1.5.0
func (*Backend6) GetKey ¶ added in v0.15.7
func (b *Backend6) GetKey() BackendKey
func (*Backend6) GetValue ¶ added in v0.15.7
func (b *Backend6) GetValue() BackendValue
type Backend6Key ¶ added in v0.15.7
type Backend6Key struct {
ID loadbalancer.BackendID
}
+k8s:deepcopy-gen=true +k8s:deepcopy-gen:interfaces=github.com/cilium/cilium/pkg/bpf.MapKey
func NewBackend6Key ¶ added in v1.5.0
func NewBackend6Key(id loadbalancer.BackendID) *Backend6Key
func (*Backend6Key) DeepCopy ¶ added in v1.5.1
func (in *Backend6Key) DeepCopy() *Backend6Key
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Backend6Key.
func (*Backend6Key) DeepCopyInto ¶ added in v1.5.1
func (in *Backend6Key) DeepCopyInto(out *Backend6Key)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*Backend6Key) DeepCopyMapKey ¶ added in v1.5.1
func (in *Backend6Key) DeepCopyMapKey() bpf.MapKey
DeepCopyMapKey is an autogenerated deepcopy function, copying the receiver, creating a new bpf.MapKey.
func (*Backend6Key) GetID ¶ added in v0.15.7
func (k *Backend6Key) GetID() loadbalancer.BackendID
func (*Backend6Key) GetKeyPtr ¶ added in v1.5.0
func (k *Backend6Key) GetKeyPtr() unsafe.Pointer
func (*Backend6Key) Map ¶ added in v0.15.7
func (k *Backend6Key) Map() *bpf.Map
func (*Backend6Key) NewValue ¶ added in v1.5.0
func (k *Backend6Key) NewValue() bpf.MapValue
func (*Backend6Key) SetID ¶ added in v0.15.7
func (k *Backend6Key) SetID(id loadbalancer.BackendID)
func (*Backend6Key) String ¶ added in v0.15.7
func (k *Backend6Key) String() string
type Backend6KeyV2 ¶ added in v1.10.5
type Backend6KeyV2 struct {
ID uint32
}
+k8s:deepcopy-gen=true +k8s:deepcopy-gen:interfaces=github.com/cilium/cilium/pkg/bpf.MapKey
func (*Backend6KeyV2) DeepCopy ¶ added in v1.10.5
func (in *Backend6KeyV2) DeepCopy() *Backend6KeyV2
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Backend6KeyV2.
func (*Backend6KeyV2) DeepCopyInto ¶ added in v1.10.5
func (in *Backend6KeyV2) DeepCopyInto(out *Backend6KeyV2)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*Backend6KeyV2) DeepCopyMapKey ¶ added in v1.10.5
func (in *Backend6KeyV2) DeepCopyMapKey() bpf.MapKey
DeepCopyMapKey is an autogenerated deepcopy function, copying the receiver, creating a new bpf.MapKey.
func (*Backend6KeyV2) GetID ¶ added in v1.10.5
func (k *Backend6KeyV2) GetID() loadbalancer.BackendID
func (*Backend6KeyV2) GetKeyPtr ¶ added in v1.10.5
func (k *Backend6KeyV2) GetKeyPtr() unsafe.Pointer
func (*Backend6KeyV2) Map ¶ added in v1.10.5
func (k *Backend6KeyV2) Map() *bpf.Map
func (*Backend6KeyV2) NewValue ¶ added in v1.10.5
func (k *Backend6KeyV2) NewValue() bpf.MapValue
func (*Backend6KeyV2) SetID ¶ added in v1.10.5
func (k *Backend6KeyV2) SetID(id loadbalancer.BackendID)
func (*Backend6KeyV2) String ¶ added in v1.10.5
func (k *Backend6KeyV2) String() string
type Backend6V2 ¶ added in v0.15.7
type Backend6V2 struct { Key *Backend6KeyV2 Value *Backend6Value }
func (*Backend6V2) GetKey ¶ added in v0.15.7
func (b *Backend6V2) GetKey() BackendKey
func (*Backend6V2) GetValue ¶ added in v0.15.7
func (b *Backend6V2) GetValue() BackendValue
func (*Backend6V2) Map ¶ added in v0.15.7
func (b *Backend6V2) Map() *bpf.Map
type Backend6Value ¶ added in v0.15.7
type Backend6Value struct { Address types.IPv6 `align:"address"` Port uint16 `align:"port"` Proto u8proto.U8proto `align:"proto"` Pad uint8 `align:"pad"` }
Backend6Value must match 'struct lb6_backend' in "bpf/lib/common.h". +k8s:deepcopy-gen=true +k8s:deepcopy-gen:interfaces=github.com/cilium/cilium/pkg/bpf.MapValue
func NewBackend6Value ¶ added in v0.15.7
func (*Backend6Value) DeepCopy ¶ added in v1.5.1
func (in *Backend6Value) DeepCopy() *Backend6Value
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Backend6Value.
func (*Backend6Value) DeepCopyInto ¶ added in v1.5.1
func (in *Backend6Value) DeepCopyInto(out *Backend6Value)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*Backend6Value) DeepCopyMapValue ¶ added in v1.5.1
func (in *Backend6Value) DeepCopyMapValue() bpf.MapValue
DeepCopyMapValue is an autogenerated deepcopy function, copying the receiver, creating a new bpf.MapValue.
func (*Backend6Value) GetAddress ¶ added in v0.15.7
func (b *Backend6Value) GetAddress() net.IP
func (*Backend6Value) GetPort ¶ added in v0.15.7
func (b *Backend6Value) GetPort() uint16
func (*Backend6Value) GetValuePtr ¶ added in v1.5.0
func (v *Backend6Value) GetValuePtr() unsafe.Pointer
func (*Backend6Value) String ¶ added in v0.15.7
func (v *Backend6Value) String() string
func (*Backend6Value) ToHost ¶ added in v0.15.7
func (v *Backend6Value) ToHost() BackendValue
ToHost converts Backend6Value to host byte order.
func (*Backend6Value) ToNetwork ¶ added in v0.15.7
func (v *Backend6Value) ToNetwork() BackendValue
type BackendIDByServiceIDSet ¶ added in v1.8.0
BackendIDByServiceIDSet is the type of a set for checking whether a backend belongs to a given service
type BackendKey ¶ added in v0.15.7
type BackendKey interface { bpf.MapKey // Return the BPF map matching the type Map() *bpf.Map // Set backend identifier SetID(loadbalancer.BackendID) // Get backend identifier GetID() loadbalancer.BackendID }
BackendKey is the interface describing protocol independent backend key.
type BackendValue ¶ added in v0.15.7
type BackendValue interface { bpf.MapValue // Get backend address GetAddress() net.IP // Get backend port GetPort() uint16 // Convert fields to network byte order. ToNetwork() BackendValue // ToHost converts fields to host byte order. ToHost() BackendValue }
BackendValue is the interface describing protocol independent backend value.
type InitParams ¶ added in v0.15.7
InitParams represents the parameters to be passed to Init().
type LBBPFMap ¶ added in v0.15.7
type LBBPFMap struct {
// contains filtered or unexported fields
}
LBBPFMap is an implementation of the LBMap interface.
func (*LBBPFMap) AddAffinityMatch ¶ added in v0.15.7
AddAffinityMatch adds the given affinity match to the BPF map.
func (*LBBPFMap) AddBackend ¶ added in v0.15.7
AddBackend adds a backend into a BPF map.
func (*LBBPFMap) DeleteAffinityMatch ¶ added in v0.15.7
DeleteAffinityMatch removes the affinity match for the given svc and backend ID tuple from the BPF map
func (*LBBPFMap) DeleteBackendByID ¶ added in v0.15.7
DeleteBackendByID removes a backend identified with the given ID from a BPF map.
func (*LBBPFMap) DeleteService ¶ added in v0.15.7
func (*LBBPFMap) DeleteService(svc loadbalancer.L3n4AddrID, backendCount int, useMaglev bool) error
DeleteService removes given service from a BPF map.
func (*LBBPFMap) DumpAffinityMatches ¶ added in v0.15.7
func (*LBBPFMap) DumpAffinityMatches() (BackendIDByServiceIDSet, error)
DumpAffinityMatches returns the affinity match map represented as a nested map which first key is svc ID and the second - backend ID.
func (*LBBPFMap) DumpBackendMaps ¶ added in v0.15.7
func (*LBBPFMap) DumpBackendMaps() ([]*loadbalancer.Backend, error)
DumpBackendMaps dumps the backend entries from the BPF maps.
func (*LBBPFMap) DumpServiceMaps ¶ added in v0.15.7
func (*LBBPFMap) DumpServiceMaps() ([]*loadbalancer.SVC, []error)
DumpServiceMaps dumps the services from the BPF maps.
func (*LBBPFMap) DumpSourceRanges ¶ added in v0.15.7
func (*LBBPFMap) DumpSourceRanges(ipv6 bool) (SourceRangeSetByServiceID, error)
func (*LBBPFMap) IsMaglevLookupTableRecreated ¶ added in v0.15.7
IsMaglevLookupTableRecreated returns true if the maglev lookup BPF map was recreated due to the changed M param.
func (*LBBPFMap) UpdateSourceRanges ¶ added in v0.15.7
func (*LBBPFMap) UpsertMaglevLookupTable ¶ added in v0.15.7
func (lbmap *LBBPFMap) UpsertMaglevLookupTable(svcID uint16, backends map[string]uint16, ipv6 bool) error
UpsertMaglevLookupTable calculates Maglev lookup table for given backends, and inserts into the Maglev BPF map.
func (*LBBPFMap) UpsertService ¶ added in v0.15.7
func (lbmap *LBBPFMap) UpsertService(p *UpsertServiceParams) error
UpsertService inserts or updates the given service in a BPF map.
The corresponding backend entries (identified with the given backendIDs) have to exist before calling the function.
The given prevBackendCount denotes a previous service backend entries count, so that the function can remove obsolete ones.
type MaglevInnerKey ¶ added in v0.15.7
type MaglevInnerKey struct{ Zero uint32 }
+k8s:deepcopy-gen=true +k8s:deepcopy-gen:interfaces=github.com/cilium/cilium/pkg/bpf.MapKey
func (*MaglevInnerKey) DeepCopy ¶ added in v1.9.0
func (in *MaglevInnerKey) DeepCopy() *MaglevInnerKey
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new MaglevInnerKey.
func (*MaglevInnerKey) DeepCopyInto ¶ added in v1.9.0
func (in *MaglevInnerKey) DeepCopyInto(out *MaglevInnerKey)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*MaglevInnerKey) DeepCopyMapKey ¶ added in v1.9.0
func (in *MaglevInnerKey) DeepCopyMapKey() bpf.MapKey
DeepCopyMapKey is an autogenerated deepcopy function, copying the receiver, creating a new bpf.MapKey.
func (*MaglevInnerKey) GetKeyPtr ¶ added in v1.9.0
func (k *MaglevInnerKey) GetKeyPtr() unsafe.Pointer
func (*MaglevInnerKey) NewValue ¶ added in v1.9.0
func (k *MaglevInnerKey) NewValue() bpf.MapValue
func (*MaglevInnerKey) String ¶ added in v1.9.0
func (k *MaglevInnerKey) String() string
type MaglevInnerVal ¶ added in v0.15.7
type MaglevInnerVal struct {
BackendIDs []uint16
}
+k8s:deepcopy-gen=true +k8s:deepcopy-gen:interfaces=github.com/cilium/cilium/pkg/bpf.MapValue
func (*MaglevInnerVal) DeepCopy ¶ added in v1.9.0
func (in *MaglevInnerVal) DeepCopy() *MaglevInnerVal
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new MaglevInnerVal.
func (*MaglevInnerVal) DeepCopyInto ¶ added in v1.9.0
func (in *MaglevInnerVal) DeepCopyInto(out *MaglevInnerVal)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*MaglevInnerVal) DeepCopyMapValue ¶ added in v1.9.0
func (in *MaglevInnerVal) DeepCopyMapValue() bpf.MapValue
DeepCopyMapValue is an autogenerated deepcopy function, copying the receiver, creating a new bpf.MapValue.
func (*MaglevInnerVal) GetValuePtr ¶ added in v1.9.0
func (v *MaglevInnerVal) GetValuePtr() unsafe.Pointer
func (*MaglevInnerVal) String ¶ added in v1.9.0
func (v *MaglevInnerVal) String() string
type MaglevOuterKey ¶ added in v0.15.7
type MaglevOuterKey struct{ RevNatID uint16 }
+k8s:deepcopy-gen=true +k8s:deepcopy-gen:interfaces=github.com/cilium/cilium/pkg/bpf.MapKey
func (*MaglevOuterKey) DeepCopy ¶ added in v1.9.0
func (in *MaglevOuterKey) DeepCopy() *MaglevOuterKey
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new MaglevOuterKey.
func (*MaglevOuterKey) DeepCopyInto ¶ added in v1.9.0
func (in *MaglevOuterKey) DeepCopyInto(out *MaglevOuterKey)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*MaglevOuterKey) DeepCopyMapKey ¶ added in v1.9.0
func (in *MaglevOuterKey) DeepCopyMapKey() bpf.MapKey
DeepCopyMapKey is an autogenerated deepcopy function, copying the receiver, creating a new bpf.MapKey.
func (*MaglevOuterKey) GetKeyPtr ¶ added in v1.9.0
func (k *MaglevOuterKey) GetKeyPtr() unsafe.Pointer
func (*MaglevOuterKey) NewValue ¶ added in v1.9.0
func (k *MaglevOuterKey) NewValue() bpf.MapValue
func (*MaglevOuterKey) String ¶ added in v1.9.0
func (k *MaglevOuterKey) String() string
func (*MaglevOuterKey) ToNetwork ¶ added in v1.9.0
func (k *MaglevOuterKey) ToNetwork() *MaglevOuterKey
type MaglevOuterVal ¶ added in v0.15.7
type MaglevOuterVal struct{ FD uint32 }
+k8s:deepcopy-gen=true +k8s:deepcopy-gen:interfaces=github.com/cilium/cilium/pkg/bpf.MapValue
func (*MaglevOuterVal) DeepCopy ¶ added in v1.9.0
func (in *MaglevOuterVal) DeepCopy() *MaglevOuterVal
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new MaglevOuterVal.
func (*MaglevOuterVal) DeepCopyInto ¶ added in v1.9.0
func (in *MaglevOuterVal) DeepCopyInto(out *MaglevOuterVal)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*MaglevOuterVal) DeepCopyMapValue ¶ added in v1.9.0
func (in *MaglevOuterVal) DeepCopyMapValue() bpf.MapValue
DeepCopyMapValue is an autogenerated deepcopy function, copying the receiver, creating a new bpf.MapValue.
func (*MaglevOuterVal) GetValuePtr ¶ added in v1.9.0
func (v *MaglevOuterVal) GetValuePtr() unsafe.Pointer
func (*MaglevOuterVal) String ¶ added in v1.9.0
func (v *MaglevOuterVal) String() string
type RevNat4Key ¶
type RevNat4Key struct {
Key uint16
}
+k8s:deepcopy-gen=true +k8s:deepcopy-gen:interfaces=github.com/cilium/cilium/pkg/bpf.MapKey
func NewRevNat4Key ¶
func NewRevNat4Key(value uint16) *RevNat4Key
func (*RevNat4Key) DeepCopy ¶ added in v1.5.1
func (in *RevNat4Key) DeepCopy() *RevNat4Key
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RevNat4Key.
func (*RevNat4Key) DeepCopyInto ¶ added in v1.5.1
func (in *RevNat4Key) DeepCopyInto(out *RevNat4Key)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*RevNat4Key) DeepCopyMapKey ¶ added in v1.5.1
func (in *RevNat4Key) DeepCopyMapKey() bpf.MapKey
DeepCopyMapKey is an autogenerated deepcopy function, copying the receiver, creating a new bpf.MapKey.
func (*RevNat4Key) GetKey ¶
func (k *RevNat4Key) GetKey() uint16
func (*RevNat4Key) GetKeyPtr ¶
func (k *RevNat4Key) GetKeyPtr() unsafe.Pointer
func (*RevNat4Key) Map ¶
func (k *RevNat4Key) Map() *bpf.Map
func (*RevNat4Key) NewValue ¶
func (k *RevNat4Key) NewValue() bpf.MapValue
func (*RevNat4Key) String ¶
func (k *RevNat4Key) String() string
func (*RevNat4Key) ToHost ¶ added in v0.15.7
func (k *RevNat4Key) ToHost() RevNatKey
ToHost converts RevNat4Key to host byte order.
func (*RevNat4Key) ToNetwork ¶ added in v0.10.0
func (k *RevNat4Key) ToNetwork() RevNatKey
ToNetwork converts RevNat4Key to network byte order.
type RevNat4Value ¶
+k8s:deepcopy-gen=true +k8s:deepcopy-gen:interfaces=github.com/cilium/cilium/pkg/bpf.MapValue
func (*RevNat4Value) DeepCopy ¶ added in v1.5.1
func (in *RevNat4Value) DeepCopy() *RevNat4Value
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RevNat4Value.
func (*RevNat4Value) DeepCopyInto ¶ added in v1.5.1
func (in *RevNat4Value) DeepCopyInto(out *RevNat4Value)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*RevNat4Value) DeepCopyMapValue ¶ added in v1.5.1
func (in *RevNat4Value) DeepCopyMapValue() bpf.MapValue
DeepCopyMapValue is an autogenerated deepcopy function, copying the receiver, creating a new bpf.MapValue.
func (*RevNat4Value) GetValuePtr ¶
func (v *RevNat4Value) GetValuePtr() unsafe.Pointer
func (*RevNat4Value) String ¶
func (v *RevNat4Value) String() string
func (*RevNat4Value) ToHost ¶ added in v0.15.7
func (k *RevNat4Value) ToHost() RevNatValue
ToHost converts RevNat4Value to host byte order.
func (*RevNat4Value) ToNetwork ¶ added in v0.10.0
func (v *RevNat4Value) ToNetwork() RevNatValue
ToNetwork converts RevNat4Value to network byte order.
type RevNat6Key ¶
type RevNat6Key struct {
Key uint16
}
+k8s:deepcopy-gen=true +k8s:deepcopy-gen:interfaces=github.com/cilium/cilium/pkg/bpf.MapKey
func NewRevNat6Key ¶
func NewRevNat6Key(value uint16) *RevNat6Key
func (*RevNat6Key) DeepCopy ¶ added in v1.5.1
func (in *RevNat6Key) DeepCopy() *RevNat6Key
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RevNat6Key.
func (*RevNat6Key) DeepCopyInto ¶ added in v1.5.1
func (in *RevNat6Key) DeepCopyInto(out *RevNat6Key)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*RevNat6Key) DeepCopyMapKey ¶ added in v1.5.1
func (in *RevNat6Key) DeepCopyMapKey() bpf.MapKey
DeepCopyMapKey is an autogenerated deepcopy function, copying the receiver, creating a new bpf.MapKey.
func (*RevNat6Key) GetKey ¶
func (v *RevNat6Key) GetKey() uint16
func (*RevNat6Key) GetKeyPtr ¶
func (v *RevNat6Key) GetKeyPtr() unsafe.Pointer
func (*RevNat6Key) Map ¶
func (v *RevNat6Key) Map() *bpf.Map
func (*RevNat6Key) NewValue ¶
func (v *RevNat6Key) NewValue() bpf.MapValue
func (*RevNat6Key) String ¶
func (v *RevNat6Key) String() string
func (*RevNat6Key) ToHost ¶ added in v0.15.7
func (v *RevNat6Key) ToHost() RevNatKey
ToNetwork converts RevNat6Key to host byte order.
func (*RevNat6Key) ToNetwork ¶ added in v0.10.0
func (v *RevNat6Key) ToNetwork() RevNatKey
ToNetwork converts RevNat6Key to network byte order.
type RevNat6Value ¶
+k8s:deepcopy-gen=true +k8s:deepcopy-gen:interfaces=github.com/cilium/cilium/pkg/bpf.MapValue
func (*RevNat6Value) DeepCopy ¶ added in v1.5.1
func (in *RevNat6Value) DeepCopy() *RevNat6Value
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RevNat6Value.
func (*RevNat6Value) DeepCopyInto ¶ added in v1.5.1
func (in *RevNat6Value) DeepCopyInto(out *RevNat6Value)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*RevNat6Value) DeepCopyMapValue ¶ added in v1.5.1
func (in *RevNat6Value) DeepCopyMapValue() bpf.MapValue
DeepCopyMapValue is an autogenerated deepcopy function, copying the receiver, creating a new bpf.MapValue.
func (*RevNat6Value) GetValuePtr ¶
func (v *RevNat6Value) GetValuePtr() unsafe.Pointer
func (*RevNat6Value) String ¶
func (v *RevNat6Value) String() string
func (*RevNat6Value) ToHost ¶ added in v0.15.7
func (v *RevNat6Value) ToHost() RevNatValue
ToNetwork converts RevNat6Value to Host byte order.
func (*RevNat6Value) ToNetwork ¶ added in v0.10.0
func (v *RevNat6Value) ToNetwork() RevNatValue
ToNetwork converts RevNat6Value to network byte order.
type RevNatValue ¶
type RevNatValue interface { bpf.MapValue // ToNetwork converts fields to network byte order. ToNetwork() RevNatValue // ToHost converts fields to host byte order. ToHost() RevNatValue }
type Service4Key ¶
type Service4Key struct { Address types.IPv4 `align:"address"` Port uint16 `align:"dport"` BackendSlot uint16 `align:"backend_slot"` Proto uint8 `align:"proto"` Scope uint8 `align:"scope"` Pad pad2uint8 `align:"pad"` }
Service4Key must match 'struct lb4_key_v2' in "bpf/lib/common.h". +k8s:deepcopy-gen=true +k8s:deepcopy-gen:interfaces=github.com/cilium/cilium/pkg/bpf.MapKey
func NewService4Key ¶
func (*Service4Key) DeepCopy ¶ added in v1.5.1
func (in *Service4Key) DeepCopy() *Service4Key
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Service4Key.
func (*Service4Key) DeepCopyInto ¶ added in v1.5.1
func (in *Service4Key) DeepCopyInto(out *Service4Key)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*Service4Key) DeepCopyMapKey ¶ added in v1.5.1
func (in *Service4Key) DeepCopyMapKey() bpf.MapKey
DeepCopyMapKey is an autogenerated deepcopy function, copying the receiver, creating a new bpf.MapKey.
func (*Service4Key) GetAddress ¶ added in v0.15.7
func (k *Service4Key) GetAddress() net.IP
func (*Service4Key) GetBackendSlot ¶ added in v0.15.7
func (k *Service4Key) GetBackendSlot() int
func (*Service4Key) GetKeyPtr ¶
func (k *Service4Key) GetKeyPtr() unsafe.Pointer
func (*Service4Key) GetPort ¶
func (k *Service4Key) GetPort() uint16
func (*Service4Key) GetScope ¶ added in v0.15.7
func (k *Service4Key) GetScope() uint8
func (*Service4Key) IsIPv6 ¶
func (k *Service4Key) IsIPv6() bool
func (*Service4Key) IsSurrogate ¶ added in v0.15.7
func (k *Service4Key) IsSurrogate() bool
func (*Service4Key) Map ¶
func (k *Service4Key) Map() *bpf.Map
func (*Service4Key) MapDelete ¶
func (k *Service4Key) MapDelete() error
func (*Service4Key) NewValue ¶
func (k *Service4Key) NewValue() bpf.MapValue
func (*Service4Key) RevNatValue ¶
func (k *Service4Key) RevNatValue() RevNatValue
func (*Service4Key) SetBackendSlot ¶ added in v0.15.7
func (k *Service4Key) SetBackendSlot(slot int)
func (*Service4Key) SetScope ¶ added in v0.15.7
func (k *Service4Key) SetScope(scope uint8)
func (*Service4Key) String ¶
func (k *Service4Key) String() string
func (*Service4Key) ToHost ¶ added in v0.10.0
func (k *Service4Key) ToHost() ServiceKey
ToHost converts Service4Key to host byte order.
func (*Service4Key) ToNetwork ¶ added in v0.10.0
func (k *Service4Key) ToNetwork() ServiceKey
type Service4Value ¶
type Service4Value struct { BackendID uint32 `align:"backend_id"` Count uint16 `align:"count"` RevNat uint16 `align:"rev_nat_index"` Flags uint8 `align:"flags"` Flags2 uint8 `align:"flags2"` Pad pad2uint8 `align:"pad"` }
Service4Value must match 'struct lb4_service_v2' in "bpf/lib/common.h". +k8s:deepcopy-gen=true +k8s:deepcopy-gen:interfaces=github.com/cilium/cilium/pkg/bpf.MapValue
func (*Service4Value) DeepCopy ¶ added in v1.5.1
func (in *Service4Value) DeepCopy() *Service4Value
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Service4Value.
func (*Service4Value) DeepCopyInto ¶ added in v1.5.1
func (in *Service4Value) DeepCopyInto(out *Service4Value)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*Service4Value) DeepCopyMapValue ¶ added in v1.5.1
func (in *Service4Value) DeepCopyMapValue() bpf.MapValue
DeepCopyMapValue is an autogenerated deepcopy function, copying the receiver, creating a new bpf.MapValue.
func (*Service4Value) GetBackendID ¶ added in v0.15.7
func (s *Service4Value) GetBackendID() loadbalancer.BackendID
func (*Service4Value) GetCount ¶
func (s *Service4Value) GetCount() int
func (*Service4Value) GetFlags ¶ added in v0.15.7
func (s *Service4Value) GetFlags() uint16
func (*Service4Value) GetRevNat ¶ added in v0.15.7
func (s *Service4Value) GetRevNat() int
func (*Service4Value) GetValuePtr ¶
func (s *Service4Value) GetValuePtr() unsafe.Pointer
func (*Service4Value) RevNatKey ¶
func (s *Service4Value) RevNatKey() RevNatKey
func (*Service4Value) SetBackendID ¶ added in v0.15.7
func (s *Service4Value) SetBackendID(id loadbalancer.BackendID)
func (*Service4Value) SetCount ¶
func (s *Service4Value) SetCount(count int)
func (*Service4Value) SetFlags ¶ added in v0.15.7
func (s *Service4Value) SetFlags(flags uint16)
func (*Service4Value) SetRevNat ¶
func (s *Service4Value) SetRevNat(id int)
func (*Service4Value) SetSessionAffinityTimeoutSec ¶ added in v0.15.7
func (s *Service4Value) SetSessionAffinityTimeoutSec(t uint32)
func (*Service4Value) String ¶
func (s *Service4Value) String() string
func (*Service4Value) ToHost ¶ added in v0.10.0
func (s *Service4Value) ToHost() ServiceValue
ToHost converts Service4Value to host byte order.
func (*Service4Value) ToNetwork ¶ added in v0.10.0
func (s *Service4Value) ToNetwork() ServiceValue
type Service6Key ¶
type Service6Key struct { Address types.IPv6 `align:"address"` Port uint16 `align:"dport"` BackendSlot uint16 `align:"backend_slot"` Proto uint8 `align:"proto"` Scope uint8 `align:"scope"` Pad pad2uint8 `align:"pad"` }
Service6Key must match 'struct lb6_key_v2' in "bpf/lib/common.h". +k8s:deepcopy-gen=true +k8s:deepcopy-gen:interfaces=github.com/cilium/cilium/pkg/bpf.MapKey
func NewService6Key ¶
func (*Service6Key) DeepCopy ¶ added in v1.5.1
func (in *Service6Key) DeepCopy() *Service6Key
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Service6Key.
func (*Service6Key) DeepCopyInto ¶ added in v1.5.1
func (in *Service6Key) DeepCopyInto(out *Service6Key)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*Service6Key) DeepCopyMapKey ¶ added in v1.5.1
func (in *Service6Key) DeepCopyMapKey() bpf.MapKey
DeepCopyMapKey is an autogenerated deepcopy function, copying the receiver, creating a new bpf.MapKey.
func (*Service6Key) GetAddress ¶ added in v0.15.7
func (k *Service6Key) GetAddress() net.IP
func (*Service6Key) GetBackendSlot ¶ added in v0.15.7
func (k *Service6Key) GetBackendSlot() int
func (*Service6Key) GetKeyPtr ¶
func (k *Service6Key) GetKeyPtr() unsafe.Pointer
func (*Service6Key) GetPort ¶
func (k *Service6Key) GetPort() uint16
func (*Service6Key) GetScope ¶ added in v0.15.7
func (k *Service6Key) GetScope() uint8
func (*Service6Key) IsIPv6 ¶
func (k *Service6Key) IsIPv6() bool
func (*Service6Key) IsSurrogate ¶ added in v0.15.7
func (k *Service6Key) IsSurrogate() bool
func (*Service6Key) Map ¶
func (k *Service6Key) Map() *bpf.Map
func (*Service6Key) MapDelete ¶ added in v0.15.7
func (k *Service6Key) MapDelete() error
func (*Service6Key) NewValue ¶
func (k *Service6Key) NewValue() bpf.MapValue
func (*Service6Key) RevNatValue ¶
func (k *Service6Key) RevNatValue() RevNatValue
func (*Service6Key) SetBackendSlot ¶ added in v0.15.7
func (k *Service6Key) SetBackendSlot(slot int)
func (*Service6Key) SetScope ¶ added in v0.15.7
func (k *Service6Key) SetScope(scope uint8)
func (*Service6Key) String ¶
func (k *Service6Key) String() string
func (*Service6Key) ToHost ¶ added in v0.10.0
func (k *Service6Key) ToHost() ServiceKey
ToHost converts Service6Key to host byte order.
func (*Service6Key) ToNetwork ¶ added in v0.10.0
func (k *Service6Key) ToNetwork() ServiceKey
type Service6Value ¶
type Service6Value struct { BackendID uint32 `align:"backend_id"` Count uint16 `align:"count"` RevNat uint16 `align:"rev_nat_index"` Flags uint8 `align:"flags"` Flags2 uint8 `align:"flags2"` Pad pad2uint8 `align:"pad"` }
Service6Value must match 'struct lb6_service_v2' in "bpf/lib/common.h". +k8s:deepcopy-gen=true +k8s:deepcopy-gen:interfaces=github.com/cilium/cilium/pkg/bpf.MapValue
func (*Service6Value) DeepCopy ¶ added in v1.5.1
func (in *Service6Value) DeepCopy() *Service6Value
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Service6Value.
func (*Service6Value) DeepCopyInto ¶ added in v1.5.1
func (in *Service6Value) DeepCopyInto(out *Service6Value)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*Service6Value) DeepCopyMapValue ¶ added in v1.5.1
func (in *Service6Value) DeepCopyMapValue() bpf.MapValue
DeepCopyMapValue is an autogenerated deepcopy function, copying the receiver, creating a new bpf.MapValue.
func (*Service6Value) GetBackendID ¶ added in v0.15.7
func (s *Service6Value) GetBackendID() loadbalancer.BackendID
func (*Service6Value) GetCount ¶
func (s *Service6Value) GetCount() int
func (*Service6Value) GetFlags ¶ added in v0.15.7
func (s *Service6Value) GetFlags() uint16
func (*Service6Value) GetRevNat ¶ added in v0.15.7
func (s *Service6Value) GetRevNat() int
func (*Service6Value) GetValuePtr ¶
func (s *Service6Value) GetValuePtr() unsafe.Pointer
func (*Service6Value) RevNatKey ¶
func (s *Service6Value) RevNatKey() RevNatKey
func (*Service6Value) SetBackendID ¶ added in v0.15.7
func (s *Service6Value) SetBackendID(id loadbalancer.BackendID)
func (*Service6Value) SetCount ¶
func (s *Service6Value) SetCount(count int)
func (*Service6Value) SetFlags ¶ added in v0.15.7
func (s *Service6Value) SetFlags(flags uint16)
func (*Service6Value) SetRevNat ¶
func (s *Service6Value) SetRevNat(id int)
func (*Service6Value) SetSessionAffinityTimeoutSec ¶ added in v0.15.7
func (s *Service6Value) SetSessionAffinityTimeoutSec(t uint32)
func (*Service6Value) String ¶
func (s *Service6Value) String() string
func (*Service6Value) ToHost ¶ added in v0.10.0
func (s *Service6Value) ToHost() ServiceValue
ToHost converts Service6Value to host byte order.
func (*Service6Value) ToNetwork ¶ added in v0.10.0
func (s *Service6Value) ToNetwork() ServiceValue
type ServiceKey ¶
type ServiceKey interface { bpf.MapKey // Return true if the key is of type IPv6 IsIPv6() bool // IsSurrogate returns true on zero-address IsSurrogate() bool // Return the BPF map matching the key type Map() *bpf.Map // Set backend slot for the key SetBackendSlot(slot int) // Get backend slot of the key GetBackendSlot() int // Set lookup scope for the key SetScope(scope uint8) // Get lookup scope for the key GetScope() uint8 // Get frontend IP address GetAddress() net.IP // Get frontend port GetPort() uint16 // Returns a RevNatValue matching a ServiceKey RevNatValue() RevNatValue // Delete entry identified with the key from the matching map MapDelete() error // ToNetwork converts fields to network byte order. ToNetwork() ServiceKey // ToHost converts fields to host byte order. ToHost() ServiceKey }
ServiceKey is the interface describing protocol independent key for services map v2.
type ServiceValue ¶
type ServiceValue interface { bpf.MapValue // Set the number of backends SetCount(int) // Get the number of backends GetCount() int // Set reverse NAT identifier SetRevNat(int) // Get reverse NAT identifier GetRevNat() int // Set flags SetFlags(uint16) // Get flags GetFlags() uint16 // Set timeout for sessionAffinity=clientIP SetSessionAffinityTimeoutSec(t uint32) // Set backend identifier SetBackendID(id loadbalancer.BackendID) // Get backend identifier GetBackendID() loadbalancer.BackendID // Returns a RevNatKey matching a ServiceValue RevNatKey() RevNatKey // Convert fields to network byte order. ToNetwork() ServiceValue // ToHost converts fields to host byte order. ToHost() ServiceValue }
ServiceValue is the interface describing protocol independent value for services map v2.
type SockRevNat4Key ¶ added in v0.15.7
type SockRevNat4Key struct {
// contains filtered or unexported fields
}
SockRevNat4Key is the tuple with address, port and cookie used as key in the reverse NAT sock map. +k8s:deepcopy-gen=true +k8s:deepcopy-gen:interfaces=github.com/cilium/cilium/pkg/bpf.MapKey
func (*SockRevNat4Key) DeepCopy ¶ added in v1.8.0
func (in *SockRevNat4Key) DeepCopy() *SockRevNat4Key
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SockRevNat4Key.
func (*SockRevNat4Key) DeepCopyInto ¶ added in v1.8.0
func (in *SockRevNat4Key) DeepCopyInto(out *SockRevNat4Key)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*SockRevNat4Key) DeepCopyMapKey ¶ added in v1.8.0
func (in *SockRevNat4Key) DeepCopyMapKey() bpf.MapKey
DeepCopyMapKey is an autogenerated deepcopy function, copying the receiver, creating a new bpf.MapKey.
func (*SockRevNat4Key) GetKeyPtr ¶ added in v1.8.0
func (k *SockRevNat4Key) GetKeyPtr() unsafe.Pointer
GetKeyPtr returns the unsafe pointer to the BPF key
func (SockRevNat4Key) NewValue ¶ added in v1.8.0
func (k SockRevNat4Key) NewValue() bpf.MapValue
NewValue returns a new empty instance of the structure representing the BPF map value.
func (*SockRevNat4Key) String ¶ added in v0.15.7
func (k *SockRevNat4Key) String() string
String converts the key into a human readable string format.
type SockRevNat4Value ¶ added in v0.15.7
type SockRevNat4Value struct {
// contains filtered or unexported fields
}
SockRevNat4Value is an entry in the reverse NAT sock map. +k8s:deepcopy-gen=true +k8s:deepcopy-gen:interfaces=github.com/cilium/cilium/pkg/bpf.MapValue
func (*SockRevNat4Value) DeepCopy ¶ added in v1.8.0
func (in *SockRevNat4Value) DeepCopy() *SockRevNat4Value
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SockRevNat4Value.
func (*SockRevNat4Value) DeepCopyInto ¶ added in v1.8.0
func (in *SockRevNat4Value) DeepCopyInto(out *SockRevNat4Value)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*SockRevNat4Value) DeepCopyMapValue ¶ added in v1.8.0
func (in *SockRevNat4Value) DeepCopyMapValue() bpf.MapValue
DeepCopyMapValue is an autogenerated deepcopy function, copying the receiver, creating a new bpf.MapValue.
func (*SockRevNat4Value) GetValuePtr ¶ added in v1.8.0
func (v *SockRevNat4Value) GetValuePtr() unsafe.Pointer
GetValuePtr returns the unsafe pointer to the BPF value
func (*SockRevNat4Value) String ¶ added in v0.15.7
func (v *SockRevNat4Value) String() string
String converts the value into a human readable string format.
type SockRevNat6Key ¶ added in v0.15.7
type SockRevNat6Key struct {
// contains filtered or unexported fields
}
SockRevNat6Key is the tuple with address, port and cookie used as key in the reverse NAT sock map. +k8s:deepcopy-gen=true +k8s:deepcopy-gen:interfaces=github.com/cilium/cilium/pkg/bpf.MapKey
func (*SockRevNat6Key) DeepCopy ¶ added in v1.8.0
func (in *SockRevNat6Key) DeepCopy() *SockRevNat6Key
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SockRevNat6Key.
func (*SockRevNat6Key) DeepCopyInto ¶ added in v1.8.0
func (in *SockRevNat6Key) DeepCopyInto(out *SockRevNat6Key)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*SockRevNat6Key) DeepCopyMapKey ¶ added in v1.8.0
func (in *SockRevNat6Key) DeepCopyMapKey() bpf.MapKey
DeepCopyMapKey is an autogenerated deepcopy function, copying the receiver, creating a new bpf.MapKey.
func (*SockRevNat6Key) GetKeyPtr ¶ added in v1.8.0
func (k *SockRevNat6Key) GetKeyPtr() unsafe.Pointer
GetKeyPtr returns the unsafe pointer to the BPF key
func (SockRevNat6Key) NewValue ¶ added in v1.8.0
func (k SockRevNat6Key) NewValue() bpf.MapValue
NewValue returns a new empty instance of the structure representing the BPF map value.
func (*SockRevNat6Key) String ¶ added in v0.15.7
func (k *SockRevNat6Key) String() string
String converts the key into a human readable string format.
type SockRevNat6Value ¶ added in v0.15.7
type SockRevNat6Value struct {
// contains filtered or unexported fields
}
SockRevNat6Value is an entry in the reverse NAT sock map. +k8s:deepcopy-gen=true +k8s:deepcopy-gen:interfaces=github.com/cilium/cilium/pkg/bpf.MapValue
func (*SockRevNat6Value) DeepCopy ¶ added in v1.8.0
func (in *SockRevNat6Value) DeepCopy() *SockRevNat6Value
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SockRevNat6Value.
func (*SockRevNat6Value) DeepCopyInto ¶ added in v1.8.0
func (in *SockRevNat6Value) DeepCopyInto(out *SockRevNat6Value)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*SockRevNat6Value) DeepCopyMapValue ¶ added in v1.8.0
func (in *SockRevNat6Value) DeepCopyMapValue() bpf.MapValue
DeepCopyMapValue is an autogenerated deepcopy function, copying the receiver, creating a new bpf.MapValue.
func (*SockRevNat6Value) GetValuePtr ¶ added in v1.8.0
func (v *SockRevNat6Value) GetValuePtr() unsafe.Pointer
GetValuePtr returns the unsafe pointer to the BPF value
func (*SockRevNat6Value) String ¶ added in v0.15.7
func (v *SockRevNat6Value) String() string
String converts the value into a human readable string format.
type SourceRangeKey ¶ added in v0.15.7
type SourceRangeKey interface { GetCIDR() *cidr.CIDR GetRevNATID() uint16 // Convert fields to network byte order. ToNetwork() SourceRangeKey // ToHost converts fields to host byte order. ToHost() SourceRangeKey }
type SourceRangeKey4 ¶ added in v0.15.7
type SourceRangeKey4 struct { PrefixLen uint32 `align:"lpm_key"` RevNATID uint16 `align:"rev_nat_id"` Pad uint16 `align:"pad"` Address types.IPv4 `align:"addr"` }
+k8s:deepcopy-gen=true +k8s:deepcopy-gen:interfaces=github.com/cilium/cilium/pkg/bpf.MapKey
func (*SourceRangeKey4) DeepCopy ¶ added in v1.8.3
func (in *SourceRangeKey4) DeepCopy() *SourceRangeKey4
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SourceRangeKey4.
func (*SourceRangeKey4) DeepCopyInto ¶ added in v1.8.3
func (in *SourceRangeKey4) DeepCopyInto(out *SourceRangeKey4)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*SourceRangeKey4) DeepCopyMapKey ¶ added in v1.8.3
func (in *SourceRangeKey4) DeepCopyMapKey() bpf.MapKey
DeepCopyMapKey is an autogenerated deepcopy function, copying the receiver, creating a new bpf.MapKey.
func (*SourceRangeKey4) GetCIDR ¶ added in v0.15.7
func (k *SourceRangeKey4) GetCIDR() *cidr.CIDR
func (*SourceRangeKey4) GetKeyPtr ¶ added in v1.8.3
func (k *SourceRangeKey4) GetKeyPtr() unsafe.Pointer
func (*SourceRangeKey4) GetRevNATID ¶ added in v0.15.7
func (k *SourceRangeKey4) GetRevNATID() uint16
func (*SourceRangeKey4) NewValue ¶ added in v1.8.3
func (k *SourceRangeKey4) NewValue() bpf.MapValue
func (*SourceRangeKey4) String ¶ added in v0.15.7
func (k *SourceRangeKey4) String() string
func (*SourceRangeKey4) ToHost ¶ added in v0.15.7
func (k *SourceRangeKey4) ToHost() SourceRangeKey
ToHost returns the key in the host byte order
func (*SourceRangeKey4) ToNetwork ¶ added in v0.15.7
func (k *SourceRangeKey4) ToNetwork() SourceRangeKey
type SourceRangeKey6 ¶ added in v0.15.7
type SourceRangeKey6 struct { PrefixLen uint32 `align:"lpm_key"` RevNATID uint16 `align:"rev_nat_id"` Pad uint16 `align:"pad"` Address types.IPv6 `align:"addr"` }
+k8s:deepcopy-gen=true +k8s:deepcopy-gen:interfaces=github.com/cilium/cilium/pkg/bpf.MapKey
func (*SourceRangeKey6) DeepCopy ¶ added in v1.8.3
func (in *SourceRangeKey6) DeepCopy() *SourceRangeKey6
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SourceRangeKey6.
func (*SourceRangeKey6) DeepCopyInto ¶ added in v1.8.3
func (in *SourceRangeKey6) DeepCopyInto(out *SourceRangeKey6)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*SourceRangeKey6) DeepCopyMapKey ¶ added in v1.8.3
func (in *SourceRangeKey6) DeepCopyMapKey() bpf.MapKey
DeepCopyMapKey is an autogenerated deepcopy function, copying the receiver, creating a new bpf.MapKey.
func (*SourceRangeKey6) GetCIDR ¶ added in v0.15.7
func (k *SourceRangeKey6) GetCIDR() *cidr.CIDR
func (*SourceRangeKey6) GetKeyPtr ¶ added in v1.8.3
func (k *SourceRangeKey6) GetKeyPtr() unsafe.Pointer
func (*SourceRangeKey6) GetRevNATID ¶ added in v0.15.7
func (k *SourceRangeKey6) GetRevNATID() uint16
func (*SourceRangeKey6) NewValue ¶ added in v1.8.3
func (k *SourceRangeKey6) NewValue() bpf.MapValue
func (*SourceRangeKey6) String ¶ added in v0.15.7
func (k *SourceRangeKey6) String() string
func (*SourceRangeKey6) ToHost ¶ added in v0.15.7
func (k *SourceRangeKey6) ToHost() SourceRangeKey
ToHost returns the key in the host byte order
func (*SourceRangeKey6) ToNetwork ¶ added in v0.15.7
func (k *SourceRangeKey6) ToNetwork() SourceRangeKey
type SourceRangeSetByServiceID ¶ added in v1.8.3
type SourceRangeValue ¶ added in v0.15.7
type SourceRangeValue struct {
Pad uint8 // not used
}
+k8s:deepcopy-gen=true +k8s:deepcopy-gen:interfaces=github.com/cilium/cilium/pkg/bpf.MapValue
func (*SourceRangeValue) DeepCopy ¶ added in v1.8.3
func (in *SourceRangeValue) DeepCopy() *SourceRangeValue
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SourceRangeValue.
func (*SourceRangeValue) DeepCopyInto ¶ added in v1.8.3
func (in *SourceRangeValue) DeepCopyInto(out *SourceRangeValue)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*SourceRangeValue) DeepCopyMapValue ¶ added in v1.8.3
func (in *SourceRangeValue) DeepCopyMapValue() bpf.MapValue
DeepCopyMapValue is an autogenerated deepcopy function, copying the receiver, creating a new bpf.MapValue.
func (*SourceRangeValue) GetValuePtr ¶ added in v1.8.3
func (v *SourceRangeValue) GetValuePtr() unsafe.Pointer
func (*SourceRangeValue) String ¶ added in v0.15.7
func (v *SourceRangeValue) String() string