routemanager

package
v0.9.0 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Sep 5, 2022 License: BSD-3-Clause Imports: 21 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func NewFirewall

func NewFirewall(parentCtx context.Context) firewallManager

NewFirewall returns an unimplemented Firewall manager

Types

type DefaultManager

type DefaultManager struct {
	// contains filtered or unexported fields
}

DefaultManager is the default instance of a route manager

func NewManager

func NewManager(ctx context.Context, pubKey string, wgInterface *iface.WGIface, statusRecorder *status.Status) *DefaultManager

NewManager returns a new route manager

func (*DefaultManager) Stop

func (m *DefaultManager) Stop()

Stop stops the manager watchers and clean firewall rules

func (*DefaultManager) UpdateRoutes

func (m *DefaultManager) UpdateRoutes(updateSerial uint64, newRoutes []*route.Route) error

UpdateRoutes compares received routes with existing routes and remove, update or add them to the client and server maps

type Manager

type Manager interface {
	UpdateRoutes(updateSerial uint64, newRoutes []*route.Route) error
	Stop()
}

Manager is a route manager interface

type MockManager

type MockManager struct {
	UpdateRoutesFunc func(updateSerial uint64, newRoutes []*route.Route) error
	StopFunc         func()
}

MockManager is the mock instance of a route manager

func (*MockManager) Stop

func (m *MockManager) Stop()

Stop mock implementation of Stop from Manager interface

func (*MockManager) UpdateRoutes

func (m *MockManager) UpdateRoutes(updateSerial uint64, newRoutes []*route.Route) error

UpdateRoutes mock implementation of UpdateRoutes from Manager interface

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL