p4rtutils

package
v0.0.0-...-e8efe0d Latest Latest
Warning

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

Go to latest
Published: Feb 28, 2025 License: Apache-2.0 Imports: 7 Imported by: 0

Documentation

Overview

Package p4rtutils implements helper functions for acl_wbb_ingress_table in p4info file.

Index

Constants

This section is empty.

Variables

View Source
var (
	WbbTableMap = map[string]uint32{
		"acl_wbb_ingress_table": 33554691,
	}
	WbbActionsMap = map[string]uint32{
		"acl_wbb_ingress_copy": 16777479,
		"acl_wbb_ingress_trap": 16777480,
	}
	WbbMatchMap = map[string]uint32{
		"is_ipv4":       1,
		"is_ipv6":       2,
		"ether_type":    3,
		"ttl":           4,
		"outer_vlan_id": 5,
	}
)

Some hardcoding to simplify things

Functions

func ACLWbbIngressTableEntryGet

func ACLWbbIngressTableEntryGet(infoList []*ACLWbbIngressTableEntryInfo) []*p4V1.Update

ACLWbbIngressTableEntryGet returns acl table updates

func P4RTNodesByPort

func P4RTNodesByPort(t testing.TB, dut *ondatra.DUTDevice) map[string]string

P4RTNodesByPort returns a map of <portID>:<P4RTNodeName> for the reserved ondatra ports using the component and the interface OC tree.

func StreamTermErr

func StreamTermErr(ste chan *p4rt_client.P4RTStreamTermErr) error

StreamTermErr returns any error (if present), in the P4RTStreamTermErr channel. Function blocks for 10 seconds if no error in channel.

Types

type ACLWbbIngressTableEntryInfo

type ACLWbbIngressTableEntryInfo struct {
	Type            p4V1.Update_Type
	IsIpv4          uint8
	IsIpv6          uint8
	EtherType       uint16
	EtherTypeMask   uint16
	TTL             uint8
	TTLMask         uint8
	OuterVlanID     uint16 // lower 12 bits
	OuterVlanIDMask uint16 // lower 12 bits
	Priority        uint32
	Metadata        string
}

ACLWbbIngressTableEntryInfo defines struct for wbb acl table

Jump to

Keyboard shortcuts

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