server

package
v4.2.0 Latest Latest
Warning

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

Go to latest
Published: Jan 1, 2026 License: Apache-2.0 Imports: 40 Imported by: 5

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func PeerTypeFromApi

func PeerTypeFromApi(a api.PeerType) (oc.PeerType, error)

Types

type BgpServer

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

func NewBgpServer

func NewBgpServer(opt ...ServerOption) *BgpServer

func (*BgpServer) AddBmp

func (s *BgpServer) AddBmp(ctx context.Context, r *api.AddBmpRequest) error

func (*BgpServer) AddDefinedSet

func (s *BgpServer) AddDefinedSet(ctx context.Context, r *api.AddDefinedSetRequest) error

func (*BgpServer) AddDynamicNeighbor

func (s *BgpServer) AddDynamicNeighbor(ctx context.Context, r *api.AddDynamicNeighborRequest) error

func (*BgpServer) AddPath

func (*BgpServer) AddPeer

func (s *BgpServer) AddPeer(ctx context.Context, r *api.AddPeerRequest) error

func (*BgpServer) AddPeerGroup

func (s *BgpServer) AddPeerGroup(ctx context.Context, r *api.AddPeerGroupRequest) error

func (*BgpServer) AddPolicy

func (s *BgpServer) AddPolicy(ctx context.Context, r *api.AddPolicyRequest) error

func (*BgpServer) AddPolicyAssignment

func (s *BgpServer) AddPolicyAssignment(ctx context.Context, r *api.AddPolicyAssignmentRequest) error

func (*BgpServer) AddRpki

func (s *BgpServer) AddRpki(ctx context.Context, r *api.AddRpkiRequest) error

func (*BgpServer) AddStatement

func (s *BgpServer) AddStatement(ctx context.Context, r *api.AddStatementRequest) error

func (*BgpServer) AddVrf

func (s *BgpServer) AddVrf(ctx context.Context, r *api.AddVrfRequest) error

func (*BgpServer) DeleteBmp

func (s *BgpServer) DeleteBmp(ctx context.Context, r *api.DeleteBmpRequest) error

func (*BgpServer) DeleteDefinedSet

func (s *BgpServer) DeleteDefinedSet(ctx context.Context, r *api.DeleteDefinedSetRequest) error

func (*BgpServer) DeleteDynamicNeighbor

func (s *BgpServer) DeleteDynamicNeighbor(ctx context.Context, r *api.DeleteDynamicNeighborRequest) error

func (*BgpServer) DeletePath

func (s *BgpServer) DeletePath(req apiutil.DeletePathRequest) error

if deleteAll is true, it will delete all locally generated paths, if deleteFamily is set, then the whole family will be deleted if uuids is not empty, it will delete paths with the given UUIDs otherwise it will delete specified paths deleteAll == false and uuids is empty, paths must contain at least one path

func (*BgpServer) DeletePeer

func (s *BgpServer) DeletePeer(ctx context.Context, r *api.DeletePeerRequest) error

func (*BgpServer) DeletePeerGroup

func (s *BgpServer) DeletePeerGroup(ctx context.Context, r *api.DeletePeerGroupRequest) error

func (*BgpServer) DeletePolicy

func (s *BgpServer) DeletePolicy(ctx context.Context, r *api.DeletePolicyRequest) error

func (*BgpServer) DeletePolicyAssignment

func (s *BgpServer) DeletePolicyAssignment(ctx context.Context, r *api.DeletePolicyAssignmentRequest) error

func (*BgpServer) DeleteRpki

func (s *BgpServer) DeleteRpki(ctx context.Context, r *api.DeleteRpkiRequest) error

func (*BgpServer) DeleteStatement

func (s *BgpServer) DeleteStatement(ctx context.Context, r *api.DeleteStatementRequest) error

func (*BgpServer) DeleteVrf

func (s *BgpServer) DeleteVrf(ctx context.Context, r *api.DeleteVrfRequest) error

func (*BgpServer) DisableMrt

func (s *BgpServer) DisableMrt(ctx context.Context, r *api.DisableMrtRequest) error

func (*BgpServer) DisablePeer

func (s *BgpServer) DisablePeer(ctx context.Context, r *api.DisablePeerRequest) error

func (*BgpServer) DisableRpki

func (s *BgpServer) DisableRpki(ctx context.Context, r *api.DisableRpkiRequest) error

func (*BgpServer) EnableMrt

func (s *BgpServer) EnableMrt(ctx context.Context, r *api.EnableMrtRequest) error

func (*BgpServer) EnablePeer

func (s *BgpServer) EnablePeer(ctx context.Context, r *api.EnablePeerRequest) error

func (*BgpServer) EnableRpki

func (s *BgpServer) EnableRpki(ctx context.Context, r *api.EnableRpkiRequest) error

func (*BgpServer) EnableZebra

func (s *BgpServer) EnableZebra(ctx context.Context, r *api.EnableZebraRequest) error

func (*BgpServer) GetBgp

func (s *BgpServer) GetBgp(ctx context.Context, r *api.GetBgpRequest) (rsp *api.GetBgpResponse, err error)

func (*BgpServer) GetTable

func (*BgpServer) ListBmp

func (*BgpServer) ListDefinedSet

func (s *BgpServer) ListDefinedSet(ctx context.Context, r *api.ListDefinedSetRequest, fn func(*api.DefinedSet)) error

func (*BgpServer) ListDynamicNeighbor

func (s *BgpServer) ListDynamicNeighbor(ctx context.Context, r *api.ListDynamicNeighborRequest, fn func(neighbor *api.DynamicNeighbor)) error

func (*BgpServer) ListPath

func (s *BgpServer) ListPath(r apiutil.ListPathRequest, fn func(prefix bgp.NLRI, paths []*apiutil.Path)) error

func (*BgpServer) ListPeer

func (s *BgpServer) ListPeer(ctx context.Context, r *api.ListPeerRequest, fn func(*api.Peer)) error

func (*BgpServer) ListPeerGroup

func (s *BgpServer) ListPeerGroup(ctx context.Context, r *api.ListPeerGroupRequest, fn func(*api.PeerGroup)) error

func (*BgpServer) ListPolicy

func (s *BgpServer) ListPolicy(ctx context.Context, r *api.ListPolicyRequest, fn func(*api.Policy)) error

func (*BgpServer) ListPolicyAssignment

func (s *BgpServer) ListPolicyAssignment(ctx context.Context, r *api.ListPolicyAssignmentRequest, fn func(*api.PolicyAssignment)) error

func (*BgpServer) ListRpki

func (s *BgpServer) ListRpki(ctx context.Context, r *api.ListRpkiRequest, fn func(*api.Rpki)) error

func (*BgpServer) ListRpkiTable

func (s *BgpServer) ListRpkiTable(ctx context.Context, r *api.ListRpkiTableRequest, fn func(*api.Roa)) error

func (*BgpServer) ListStatement

func (s *BgpServer) ListStatement(ctx context.Context, r *api.ListStatementRequest, fn func(*api.Statement)) error

func (*BgpServer) ListVrf

func (s *BgpServer) ListVrf(ctx context.Context, r *api.ListVrfRequest, fn func(*api.Vrf)) error

func (*BgpServer) Log

func (s *BgpServer) Log() *slog.Logger

func (*BgpServer) ResetPeer

func (s *BgpServer) ResetPeer(ctx context.Context, r *api.ResetPeerRequest) error

func (*BgpServer) ResetRpki

func (s *BgpServer) ResetRpki(ctx context.Context, r *api.ResetRpkiRequest) error

func (*BgpServer) Serve

func (s *BgpServer) Serve()

func (*BgpServer) SetLogLevel

func (s *BgpServer) SetLogLevel(ctx context.Context, r *api.SetLogLevelRequest) error

func (*BgpServer) SetPolicies

func (s *BgpServer) SetPolicies(ctx context.Context, r *api.SetPoliciesRequest) error

func (*BgpServer) SetPolicyAssignment

func (s *BgpServer) SetPolicyAssignment(ctx context.Context, r *api.SetPolicyAssignmentRequest) error

func (*BgpServer) ShutdownPeer

func (s *BgpServer) ShutdownPeer(ctx context.Context, r *api.ShutdownPeerRequest) error

func (*BgpServer) StartBgp

func (s *BgpServer) StartBgp(ctx context.Context, r *api.StartBgpRequest) error

func (*BgpServer) Stop

func (s *BgpServer) Stop()

func (*BgpServer) StopBgp

func (s *BgpServer) StopBgp(ctx context.Context, r *api.StopBgpRequest) error

func (*BgpServer) UpdatePeer

func (s *BgpServer) UpdatePeer(ctx context.Context, r *api.UpdatePeerRequest) (rsp *api.UpdatePeerResponse, err error)

func (*BgpServer) UpdatePeerGroup

func (s *BgpServer) UpdatePeerGroup(ctx context.Context, r *api.UpdatePeerGroupRequest) (rsp *api.UpdatePeerGroupResponse, err error)

func (*BgpServer) WatchEvent

func (s *BgpServer) WatchEvent(ctx context.Context, callbacks WatchEventMessageCallbacks, opts ...WatchOption) error

type FSMOperation

type FSMOperation uint
const (
	FSMMgmtOp FSMOperation = iota
	FSMAccept
	FSMROAEvent
	FSMMessage

	FSMOperationTypeCount
)

type FSMTimingHook

type FSMTimingHook interface {
	Observe(op FSMOperation, tOp, tWait time.Duration)
}

type ServerOption

type ServerOption func(*options)

func GrpcListenAddress

func GrpcListenAddress(addr string) ServerOption

func GrpcOption

func GrpcOption(opt []grpc.ServerOption) ServerOption

func LoggerOption

func LoggerOption(logger *slog.Logger, levelVar *slog.LevelVar) ServerOption

func TimingHookOption

func TimingHookOption(hook FSMTimingHook) ServerOption

type WatchEventMessageCallbacks

type WatchEventMessageCallbacks struct {
	OnPathUpdate func([]*apiutil.Path, time.Time)
	OnBestPath   func([]*apiutil.Path, time.Time)
	OnPathEor    func(*apiutil.Path, time.Time)
	OnPeerUpdate func(*apiutil.WatchEventMessage_PeerEvent, time.Time)
}

type WatchOption

type WatchOption func(*watchOptions)

func WatchBestPath

func WatchBestPath(current bool) WatchOption

func WatchEor

func WatchEor(current bool) WatchOption

func WatchPeer

func WatchPeer() WatchOption

func WatchPostUpdate

func WatchPostUpdate(current bool, peerAddress string, peerGroup string) WatchOption

func WatchUpdate

func WatchUpdate(current bool, peerAddress string, peerGroup string) WatchOption

Jump to

Keyboard shortcuts

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