vppcalls

package
v1.0.5 Latest Latest
Warning

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

Go to latest
Published: Sep 26, 2017 License: Apache-2.0 Imports: 11 Imported by: 0

Documentation

Overview

Package vppcalls contains wrappers over VPP binary APIs for bridge-domains, L2 FIBs and XConnect pairs.

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func CheckMsgCompatibilityForBridgeDomains

func CheckMsgCompatibilityForBridgeDomains(vppChan *govppapi.Channel) error

CheckMsgCompatibilityForBridgeDomains checks if CRSs are compatible with VPP in runtime

func CheckMsgCompatibilityForL2FIB

func CheckMsgCompatibilityForL2FIB(vppChan *govppapi.Channel) error

CheckMsgCompatibilityForL2FIB checks if CRSs are compatible with VPP in runtime

func CheckMsgCompatibilityForL2XConnect

func CheckMsgCompatibilityForL2XConnect(vppChan *govppapi.Channel) error

CheckMsgCompatibilityForL2XConnect checks if CRSs are compatible with VPP in runtime

func VppAddArpTerminationTableEntry

func VppAddArpTerminationTableEntry(bridgeDomainID uint32, mac string, ip string, vppChan *govppapi.Channel) error

VppAddArpTerminationTableEntry adds ARP termination entry

func VppAddBridgeDomain

func VppAddBridgeDomain(bdIdx uint32, bridgeDomain *l2.BridgeDomains_BridgeDomain, vppChan *govppapi.Channel) error

VppAddBridgeDomain adds new bridge domain

func VppDeleteBridgeDomain

func VppDeleteBridgeDomain(bdIdx uint32, vppChan *govppapi.Channel) error

VppDeleteBridgeDomain removes existing bridge domain

func VppRemoveArpTerminationTableEntry

func VppRemoveArpTerminationTableEntry(bdID uint32, mac string, ip string, vppChan *govppapi.Channel) error

VppRemoveArpTerminationTableEntry removes ARP termination entry

func VppSetAllInterfacesToBridgeDomain

func VppSetAllInterfacesToBridgeDomain(bridgeDomain *l2.BridgeDomains_BridgeDomain, bridgeDomainIndex uint32,
	swIfIndexes ifaceidx.SwIfIndex, vppChan *govppapi.Channel) ([]string, []string, string)

VppSetAllInterfacesToBridgeDomain does lookup all interfaces which belongs to bridge domain, and bvi interface

func VppSetInterfaceToBridgeDomain

func VppSetInterfaceToBridgeDomain(bridgeDomainIndex uint32, interfaceIndex uint32, bvi bool, vppChan *govppapi.Channel)

VppSetInterfaceToBridgeDomain sets provided interface to bridge domain

func VppSetL2XConnect

func VppSetL2XConnect(receiveIfaceIndex uint32, transmitIfaceIndex uint32, vppChan *govppapi.Channel) error

VppSetL2XConnect creates xConnect between two existing interfaces

func VppUnsetAllInterfacesFromBridgeDomain

func VppUnsetAllInterfacesFromBridgeDomain(bridgeDomain *l2.BridgeDomains_BridgeDomain, bridgeDomainIndex uint32,
	swIfIndexes ifaceidx.SwIfIndex, vppChan *govppapi.Channel) []string

VppUnsetAllInterfacesFromBridgeDomain removes all interfaces from bridge domain (set them as L3)

func VppUnsetL2XConnect

func VppUnsetL2XConnect(receiveIfaceIndex uint32, transmitIfaceIndex uint32, vppChan *govppapi.Channel) error

VppUnsetL2XConnect removes xConnect between two interfaces

func VppUpdateBridgeDomain

func VppUpdateBridgeDomain(oldBdIdx uint32, newBdIdx uint32, newBridgeDomain *l2.BridgeDomains_BridgeDomain, vppChan *govppapi.Channel) error

VppUpdateBridgeDomain updates bridge domain parameters

Types

type FibLogicalReq

type FibLogicalReq struct {
	MAC     string
	BDIdx   uint32
	SwIfIdx uint32
	BVI     bool
	Static  bool
	Delete  bool
	// contains filtered or unexported fields
}

FibLogicalReq groups multiple fields to not enumerate all of them in one function call (request, reply/callback)

type L2FibVppCalls

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

L2FibVppCalls aggregates vpp calls related to l2 fib

func NewL2FibVppCalls

func NewL2FibVppCalls(vppChan *govppapi.Channel) *L2FibVppCalls

NewL2FibVppCalls is a constructor

func (*L2FibVppCalls) Add

func (fib *L2FibVppCalls) Add(mac string, bdID uint32, ifIdx uint32, bvi bool, static bool,
	callback func(error)) error

Add creates L2 FIB table entry

func (*L2FibVppCalls) Delete

func (fib *L2FibVppCalls) Delete(mac string, bdID uint32, ifIdx uint32, callback func(error)) error

Delete removes existing L2 FIB table entry

func (*L2FibVppCalls) WatchFIBReplies

func (fib *L2FibVppCalls) WatchFIBReplies()

WatchFIBReplies is meant to be used in go routine

Jump to

Keyboard shortcuts

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