Documentation
¶
Overview ¶
Package operator implements network operators.
Index ¶
- func GetDHCP4ClientIdentifier(ctx context.Context, st state.State, logger *zap.Logger, linkName string, ...) ([]dhcpv4.Modifier, error)
- func GetDHCPv6ClientIdentifier(ctx context.Context, st state.State, logger *zap.Logger, linkName string, ...) ([]dhcpv6.Modifier, error)
- func WithNumSeconds(secs uint16) dhcpv4.Modifier
- type DHCP4
- func (d *DHCP4) AddressSpecs() []network.AddressSpecSpec
- func (d *DHCP4) HostnameSpecs() []network.HostnameSpecSpec
- func (d *DHCP4) LinkSpecs() []network.LinkSpecSpec
- func (d *DHCP4) Prefix() string
- func (d *DHCP4) ResolverSpecs() []network.ResolverSpecSpec
- func (d *DHCP4) RouteSpecs() []network.RouteSpecSpec
- func (d *DHCP4) Run(ctx context.Context, notifyCh chan<- struct{})
- func (d *DHCP4) TimeServerSpecs() []network.TimeServerSpecSpec
- type DHCP6
- func (d *DHCP6) AddressSpecs() []network.AddressSpecSpec
- func (d *DHCP6) HostnameSpecs() []network.HostnameSpecSpec
- func (d *DHCP6) LinkSpecs() []network.LinkSpecSpec
- func (d *DHCP6) Prefix() string
- func (d *DHCP6) ResolverSpecs() []network.ResolverSpecSpec
- func (d *DHCP6) RouteSpecs() []network.RouteSpecSpec
- func (d *DHCP6) Run(ctx context.Context, notifyCh chan<- struct{})
- func (d *DHCP6) TimeServerSpecs() []network.TimeServerSpecSpec
- type Operator
- type VIP
- func (vip *VIP) AddressSpecs() []network.AddressSpecSpec
- func (vip *VIP) HostnameSpecs() []network.HostnameSpecSpec
- func (vip *VIP) LinkSpecs() []network.LinkSpecSpec
- func (vip *VIP) Prefix() string
- func (vip *VIP) ResolverSpecs() []network.ResolverSpecSpec
- func (vip *VIP) RouteSpecs() []network.RouteSpecSpec
- func (vip *VIP) Run(ctx context.Context, _ chan<- struct{})
- func (vip *VIP) TimeServerSpecs() []network.TimeServerSpecSpec
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
func GetDHCP4ClientIdentifier ¶
func GetDHCP4ClientIdentifier(ctx context.Context, st state.State, logger *zap.Logger, linkName string, spec network.ClientIdentifierSpec) ([]dhcpv4.Modifier, error)
GetDHCP4ClientIdentifier returns the DHCP client identifier to use.
func GetDHCPv6ClientIdentifier ¶
func GetDHCPv6ClientIdentifier(ctx context.Context, st state.State, logger *zap.Logger, linkName string, spec network.ClientIdentifierSpec) ([]dhcpv6.Modifier, error)
GetDHCPv6ClientIdentifier returns the DHCPv6 client identifier to use.
func WithNumSeconds ¶
WithNumSeconds sets the secs field of a DHCPv4 packet.
Types ¶
type DHCP4 ¶
type DHCP4 struct {
// contains filtered or unexported fields
}
DHCP4 implements the DHCPv4 network operator.
func NewDHCP4 ¶
func NewDHCP4(logger *zap.Logger, linkName string, config network.DHCP4OperatorSpec, platform runtime.Platform, state state.State) *DHCP4
NewDHCP4 creates DHCPv4 operator.
func (*DHCP4) AddressSpecs ¶
func (d *DHCP4) AddressSpecs() []network.AddressSpecSpec
AddressSpecs implements Operator interface.
func (*DHCP4) HostnameSpecs ¶
func (d *DHCP4) HostnameSpecs() []network.HostnameSpecSpec
HostnameSpecs implements Operator interface.
func (*DHCP4) LinkSpecs ¶
func (d *DHCP4) LinkSpecs() []network.LinkSpecSpec
LinkSpecs implements Operator interface.
func (*DHCP4) ResolverSpecs ¶
func (d *DHCP4) ResolverSpecs() []network.ResolverSpecSpec
ResolverSpecs implements Operator interface.
func (*DHCP4) RouteSpecs ¶
func (d *DHCP4) RouteSpecs() []network.RouteSpecSpec
RouteSpecs implements Operator interface.
func (*DHCP4) TimeServerSpecs ¶
func (d *DHCP4) TimeServerSpecs() []network.TimeServerSpecSpec
TimeServerSpecs implements Operator interface.
type DHCP6 ¶
type DHCP6 struct {
// contains filtered or unexported fields
}
DHCP6 implements the DHCPv6 network operator.
func NewDHCP6 ¶
func NewDHCP6(logger *zap.Logger, linkName string, config network.DHCP6OperatorSpec, state state.State) *DHCP6
NewDHCP6 creates DHCPv6 operator.
func (*DHCP6) AddressSpecs ¶
func (d *DHCP6) AddressSpecs() []network.AddressSpecSpec
AddressSpecs implements Operator interface.
func (*DHCP6) HostnameSpecs ¶
func (d *DHCP6) HostnameSpecs() []network.HostnameSpecSpec
HostnameSpecs implements Operator interface.
func (*DHCP6) LinkSpecs ¶
func (d *DHCP6) LinkSpecs() []network.LinkSpecSpec
LinkSpecs implements Operator interface.
func (*DHCP6) ResolverSpecs ¶
func (d *DHCP6) ResolverSpecs() []network.ResolverSpecSpec
ResolverSpecs implements Operator interface.
func (*DHCP6) RouteSpecs ¶
func (d *DHCP6) RouteSpecs() []network.RouteSpecSpec
RouteSpecs implements Operator interface.
func (*DHCP6) TimeServerSpecs ¶
func (d *DHCP6) TimeServerSpecs() []network.TimeServerSpecSpec
TimeServerSpecs implements Operator interface.
type Operator ¶
type Operator interface {
Run(ctx context.Context, notifyCh chan<- struct{})
Prefix() string
AddressSpecs() []network.AddressSpecSpec
RouteSpecs() []network.RouteSpecSpec
LinkSpecs() []network.LinkSpecSpec
HostnameSpecs() []network.HostnameSpecSpec
ResolverSpecs() []network.ResolverSpecSpec
TimeServerSpecs() []network.TimeServerSpecSpec
}
Operator describes common interface of the operators.
type VIP ¶
type VIP struct {
// contains filtered or unexported fields
}
VIP implements a no-op Virtual IP operator for chubo mode.
func (*VIP) AddressSpecs ¶
func (vip *VIP) AddressSpecs() []network.AddressSpecSpec
AddressSpecs implements Operator interface.
func (*VIP) HostnameSpecs ¶
func (vip *VIP) HostnameSpecs() []network.HostnameSpecSpec
HostnameSpecs implements Operator interface.
func (*VIP) LinkSpecs ¶
func (vip *VIP) LinkSpecs() []network.LinkSpecSpec
LinkSpecs implements Operator interface.
func (*VIP) ResolverSpecs ¶
func (vip *VIP) ResolverSpecs() []network.ResolverSpecSpec
ResolverSpecs implements Operator interface.
func (*VIP) RouteSpecs ¶
func (vip *VIP) RouteSpecs() []network.RouteSpecSpec
RouteSpecs implements Operator interface.
func (*VIP) TimeServerSpecs ¶
func (vip *VIP) TimeServerSpecs() []network.TimeServerSpecSpec
TimeServerSpecs implements Operator interface.