isisxplugin

package
v0.0.0-...-ae01f8c Latest Latest
Warning

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

Go to latest
Published: Jan 15, 2024 License: Apache-2.0 Imports: 14 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

View Source
var DefaultPlugin = *NewPlugin()

DefaultPlugin is a default instance of ISIXPlugin.

Functions

This section is empty.

Types

type Deps

type Deps struct {
	infra.PluginDeps
	Scheduler   kvs.KVScheduler
	GoVppmux    govppmux.API
	IfPlugin    ifplugin.API
	StatusCheck statuscheck.PluginStatusWriter // optional
}

Deps represents dependencies for the plugin.

type ISISXPlugin

type ISISXPlugin struct {
	Deps
	// contains filtered or unexported fields
}

ISISXPlugin is a plugin that manages ISIS protocol packet forwarding. ISIS packets can't be handled by ABX because ISIS packets won't reach ACL in VPP (they are dropped by OSI VPP node). Therefore ISIS crossconnect plugin for VPP was created. Packet are grabbed sooner and based on protocol filtering. This ISISXPlugin should handle configuration(control plane) for that ISISX VPP plugin.

func NewPlugin

func NewPlugin(opts ...Option) *ISISXPlugin

NewPlugin creates a new Plugin with the provides Options

func (*ISISXPlugin) AfterInit

func (p *ISISXPlugin) AfterInit() error

AfterInit registers plugin with StatusCheck.

func (*ISISXPlugin) Init

func (p *ISISXPlugin) Init() error

Init initializes ISISX plugin.

type Option

type Option func(plugin *ISISXPlugin)

Option is a function that can be used in NewPlugin to customize Plugin.

func UseDeps

func UseDeps(f func(*Deps)) Option

UseDeps returns Option that can inject custom dependencies.

Directories

Path Synopsis
Package vppcalls contains wrappers over VPP ISISX binary APIs and helpers to dump ISISX configuration in VPP
Package vppcalls contains wrappers over VPP ISISX binary APIs and helpers to dump ISISX configuration in VPP

Jump to

Keyboard shortcuts

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