vppcalls

package
v2.5.1+incompatible Latest Latest
Warning

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

Go to latest
Published: Dec 6, 2019 License: Apache-2.0 Imports: 5 Imported by: 52

Documentation

Index

Constants

This section is empty.

Variables

View Source
var Versions = map[string]HandlerVersion{}

Functions

This section is empty.

Types

type HandlerVersion

type HandlerVersion struct {
	Msgs []govppapi.Message
	New  func(govppapi.Channel, ifaceidx.IfaceMetadataIndex, logging.Logger) SRv6VppAPI
}

type SRv6VPPRead added in v1.8.1

type SRv6VPPRead interface {

	// RetrievePolicyIndexInfo retrieves index of policy <policy> and its segment lists
	RetrievePolicyIndexInfo(policy *srv6.Policy) (policyIndex uint32, segmentListIndexes map[*srv6.Policy_SegmentList]uint32, err error)
}

SRv6VPPRead provides read methods for segment routing

type SRv6VPPWrite added in v1.8.1

type SRv6VPPWrite interface {
	// AddLocalSid adds local sid <localSID> into VPP
	AddLocalSid(localSID *srv6.LocalSID) error
	// DeleteLocalSid deletes local sid <localSID> in VPP
	DeleteLocalSid(localSID *srv6.LocalSID) error
	// SetEncapsSourceAddress sets for SRv6 in VPP the source address used for encapsulated packet
	SetEncapsSourceAddress(address string) error
	// AddPolicy adds SRv6 policy <policy> into VPP (including all policy's segment lists).
	AddPolicy(policy *srv6.Policy) error
	// DeletePolicy deletes SRv6 policy given by binding SID <bindingSid> (including all policy's segment lists).
	DeletePolicy(bindingSid net.IP) error
	// AddPolicySegmentList adds segment list <segmentList> to SRv6 policy <policy> in VPP
	AddPolicySegmentList(segmentList *srv6.Policy_SegmentList, policy *srv6.Policy) error
	// DeletePolicySegmentList removes segment list <segmentList> (with VPP-internal index <segmentVPPIndex>) from SRv6 policy <policy> in VPP
	DeletePolicySegmentList(segmentList *srv6.Policy_SegmentList, segmentVPPIndex uint32, policy *srv6.Policy) error
	// AddSteering sets in VPP steering into SRv6 policy.
	AddSteering(steering *srv6.Steering) error
	// RemoveSteering removes in VPP steering into SRv6 policy.
	RemoveSteering(steering *srv6.Steering) error
}

SRv6VPPWrite provides write methods for segment routing

type SRv6VppAPI added in v1.8.1

type SRv6VppAPI interface {
	SRv6VPPWrite
	SRv6VPPRead
}

SRv6VppAPI is API boundary for vppcall package access, introduced to properly test code dependent on vppcalls package

func CompatibleSRv6VppHandler

func CompatibleSRv6VppHandler(
	ch govppapi.Channel, idx ifaceidx.IfaceMetadataIndex, log logging.Logger,
) SRv6VppAPI

Directories

Path Synopsis
Package vpp1904 contains wrappers over VPP (version 19.01) binary APIs to simplify their usage
Package vpp1904 contains wrappers over VPP (version 19.01) binary APIs to simplify their usage
Package vpp1908 contains wrappers over VPP (version 19.01) binary APIs to simplify their usage
Package vpp1908 contains wrappers over VPP (version 19.01) binary APIs to simplify their usage
Package vpp2001_324 contains wrappers over VPP (version 20.01) binary APIs to simplify their usage
Package vpp2001_324 contains wrappers over VPP (version 20.01) binary APIs to simplify their usage
Package vpp2001_379 contains wrappers over VPP (version 20.01) binary APIs to simplify their usage
Package vpp2001_379 contains wrappers over VPP (version 20.01) binary APIs to simplify their usage

Jump to

Keyboard shortcuts

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