Open Ethernet Networking (OpEN) API Guide and Reference Manual  3.6.0.3
Data Structures | Macros | Enumerations | Functions
This Code Implements The OpEN Dot1cb API [OPENAPI_DOT1CB]

Data Structures

struct  OPEN_DOT1CB_GLOBAL_STATS_t
 
struct  OPEN_DOT1CB_INTF_STATS_t
 

Macros

#define OPEN_DOT1CB_IPV4_PREFIX_LEN   32
 
#define OPEN_DOT1CB_IPV6_PREFIX_LEN   128
 
#define OPEN_MAX_DOT1CB_INITIATOR_FLOWS   1024
 maximum flow ID for 802.1CB initiator flows
 
#define OPEN_MAX_DOT1CB_IPV4   512
 maximum IPv4 classifiers for 802.1CB flows
 
#define OPEN_MAX_DOT1CB_IPV6   512
 maximum IPv6 classifiers for 802.1CB flows
 
#define OPEN_MAX_DOT1CB_TRANSIT_FLOWS   1024
 maximum flow ID for 802.1CB transit flows
 
#define OPEN_MAX_DOT1CB_VLANS   16
 maximum VLANs enabled for 802.1CB concurrently
 
#define OPEN_MFDB_MAX_MAC_ENTRIES   1024
 maximum MFDB classifiers for 802.1CB
 
#define OPEN_MIN_DOT1CB_INITIATOR_FLOWS   1
 minimum flow ID for 802.1CB initiator flows
 
#define OPEN_MIN_DOT1CB_TRANSIT_FLOWS   1
 minimum flow ID for 802.1CB transit flows
 

Enumerations

enum  OPEN_DOT1CB_FLOW_TYPE_t { OPEN_DOT1CB_FLOW_TYPE_NONE = 0, OPEN_DOT1CB_FLOW_TYPE_INITIATOR = 1, OPEN_DOT1CB_FLOW_TYPE_TRANSIT = 2 }
 

Functions

open_error_t openapiDot1cbApiDot1cbEnabledVlanNextGet (openapiClientHandle_t *client_handle, uint32_t *vid)
 Get the next 802.1CB enabled VLAN. More...
 
open_error_t openapiDot1cbApiInitFlowGet (openapiClientHandle_t *client_handle, uint32_t flowId, uint32_t *classifiers, uint32_t *nextTxSequence, uint64_t *txPackets)
 Get the 802.1CB initiator flow and its status/statistics. More...
 
open_error_t openapiDot1cbApiInitFlowNextGet (openapiClientHandle_t *client_handle, uint32_t *flowId, uint32_t *classifiers, uint32_t *nextTxSequence, uint64_t *txPackets)
 Get the next 802.1CB initiator flow and its status/statistics. More...
 
open_error_t openapiDot1cbApiNumDot1cbVlansGet (openapiClientHandle_t *client_handle, uint32_t *value)
 Get the number of 802.1CB enabled VLANs. More...
 
open_error_t openapiDot1cbApiTransitFlowAcceptanceWindowSizeSet (openapiClientHandle_t *client_handle, uint32_t flowId, uint32_t acceptanceWindow)
 Set the acceptance window size for an 802.1CB transit flow. More...
 
open_error_t openapiDot1cbApiTransitFlowAgeTimeSet (openapiClientHandle_t *client_handle, uint32_t flowId, uint32_t ageTime)
 Set the age time for an 802.1CB transit flow. More...
 
open_error_t openapiDot1cbApiTransitFlowConfigGet (openapiClientHandle_t *client_handle, uint32_t flowId, uint32_t *historyWindow, uint32_t *acceptanceWindow, uint32_t *ageTime)
 Get the 802.1CB transit flow configuration. More...
 
open_error_t openapiDot1cbApiTransitFlowGet (openapiClientHandle_t *client_handle, uint32_t flowId, uint32_t *classifiers, uint32_t *lastRxSequence, uint64_t *matchingPackets, uint64_t *acceptedPackets, uint64_t *duplicatePackets)
 Get the 802.1CB transit flow and its status/statistics. More...
 
open_error_t openapiDot1cbApiTransitFlowHistoryWindowSizeSet (openapiClientHandle_t *client_handle, uint32_t flowId, uint32_t historyWindow)
 Set the history window size for an 802.1CB transit flow. More...
 
open_error_t openapiDot1cbApiTransitFlowNextGet (openapiClientHandle_t *client_handle, uint32_t *flowId, uint32_t *classifiers, uint32_t *lastRxSequence, uint64_t *matchingPackets, uint64_t *acceptedPackets, uint64_t *duplicatePackets)
 Get the next 802.1CB transit flow and its status/statistics. More...
 
open_error_t openapiDot1cbForwardArpNdpModeGet (openapiClientHandle_t *client_handle, uint32_t vlanID, OPEN_CONTROL_t *mode)
 Get the 802.1CB ARP/NDP forwarding mode for a given VLAN. More...
 
open_error_t openapiDot1cbForwardArpNdpModeSet (openapiClientHandle_t *client_handle, uint32_t vlanID, OPEN_CONTROL_t mode)
 Set the 802.1CB ARP/NDP forwarding mode for a given VLAN. More...
 
open_error_t openapiDot1cbGlobalStatsGet (openapiClientHandle_t *client_handle, OPEN_DOT1CB_GLOBAL_STATS_t *stat)
 Get the 802.1CB global statistics. More...
 
open_error_t openapiDot1cbIntfNextGet (openapiClientHandle_t *client_handle, uint32_t ifNum, uint32_t *nextIfNum)
 Get the next valid 802.1CB interface. More...
 
open_error_t openapiDot1cbIntfStatsGet (openapiClientHandle_t *client_handle, uint32_t ifNum, OPEN_DOT1CB_INTF_STATS_t *stat)
 Get the 802.1CB statistics for the specified interface. More...
 
open_error_t openapiDot1cbIpv4ClassifierAdd (openapiClientHandle_t *client_handle, open_inet_addr_t *srcAddr, uint32_t srcMaskLen, open_inet_addr_t *dstAddr, uint32_t dstMaskLen, OPEN_DOT1CB_FLOW_TYPE_t flowType, uint32_t flowId)
 Add an IPv4 classifier. More...
 
open_error_t openapiDot1cbIpv4ClassifierCountGet (openapiClientHandle_t *client_handle, uint32_t *value)
 Get the number of configured IPv4 classifiers. More...
 
open_error_t openapiDot1cbIpv4ClassifierDelete (openapiClientHandle_t *client_handle, open_inet_addr_t *srcAddr, uint32_t srcMaskLen, open_inet_addr_t *dstAddr, uint32_t dstMaskLen)
 Delete an IPv4 classifier. More...
 
open_error_t openapiDot1cbIpv4ClassifierGet (openapiClientHandle_t *client_handle, open_inet_addr_t *srcAddr, uint32_t srcMaskLen, open_inet_addr_t *dstAddr, uint32_t dstMaskLen, OPEN_DOT1CB_FLOW_TYPE_t *flowType, uint32_t *flowId)
 Get an IPv4 classifier. More...
 
open_error_t openapiDot1cbIpv4ClassifierInHardwareGet (openapiClientHandle_t *client_handle, uint32_t *value)
 Get the status flag indicating whether IPv4 classifiers are installed in the hardware. More...
 
open_error_t openapiDot1cbIpv4ClassifierNextGet (openapiClientHandle_t *client_handle, open_inet_addr_t *srcAddr, uint32_t *srcMaskLen, open_inet_addr_t *dstAddr, uint32_t *dstMaskLen, OPEN_DOT1CB_FLOW_TYPE_t *flowType, uint32_t *flowId)
 Get the next IPv4 classifier. More...
 
open_error_t openapiDot1cbIpv6ClassifierAdd (openapiClientHandle_t *client_handle, open_in6_addr_t *srcAddr, uint32_t srcMaskLen, open_in6_addr_t *dstAddr, uint32_t dstMaskLen, OPEN_DOT1CB_FLOW_TYPE_t flowType, uint32_t flowId)
 Add an IPv6 classifier. More...
 
open_error_t openapiDot1cbIpv6ClassifierCountGet (openapiClientHandle_t *client_handle, uint32_t *value)
 Get the number of configured IPv6 classifiers. More...
 
open_error_t openapiDot1cbIpv6ClassifierDelete (openapiClientHandle_t *client_handle, open_in6_addr_t *srcAddr, uint32_t srcMaskLen, open_in6_addr_t *dstAddr, uint32_t dstMaskLen)
 Delete an IPv6 classifier. More...
 
open_error_t openapiDot1cbIpv6ClassifierGet (openapiClientHandle_t *client_handle, open_in6_addr_t *srcAddr, uint32_t srcMaskLen, open_in6_addr_t *dstAddr, uint32_t dstMaskLen, OPEN_DOT1CB_FLOW_TYPE_t *flowType, uint32_t *flowId)
 Get an IPv6 classifier. More...
 
open_error_t openapiDot1cbIpv6ClassifierInHardwareGet (openapiClientHandle_t *client_handle, uint32_t *value)
 Get the status flag indicating whether IPv6 classifiers are installed in the hardware. More...
 
open_error_t openapiDot1cbIpv6ClassifierNextGet (openapiClientHandle_t *client_handle, open_in6_addr_t *srcAddr, uint32_t *srcMaskLen, open_in6_addr_t *dstAddr, uint32_t *dstMaskLen, OPEN_DOT1CB_FLOW_TYPE_t *flowType, uint32_t *flowId)
 Get the next IPv6 classifier. More...
 
open_error_t openapiDot1cbModeGet (openapiClientHandle_t *client_handle, uint32_t vlanID, OPEN_CONTROL_t *mode)
 Get the 802.1CB mode for a given VLAN. More...
 
open_error_t openapiDot1cbModeSet (openapiClientHandle_t *client_handle, uint32_t vlanID, OPEN_CONTROL_t mode)
 Set the 802.1CB mode for a given VLAN. More...
 
open_error_t openapiDot1cbNumActiveInititatorFlowsGet (openapiClientHandle_t *client_handle, uint32_t *value)
 Get the number of initiator flows installed in the hardware. More...
 
open_error_t openapiDot1cbNumActiveTransitFlowsGet (openapiClientHandle_t *client_handle, uint32_t *value)
 Get the number of transit flows installed in the hardware. More...
 
open_error_t openapiDot1cbNumMfdbClassifiersGet (openapiClientHandle_t *client_handle, uint32_t *value)
 Get the number of MFDB entries associated with flows. More...
 
open_error_t openapiDot1cbRtagModeGet (openapiClientHandle_t *client_handle, uint32_t ifNum, OPEN_CONTROL_t *mode)
 Get the 802.1CB RTAG mode for the specified interface. More...
 
open_error_t openapiDot1cbRtagModeSet (openapiClientHandle_t *client_handle, uint32_t ifNum, OPEN_CONTROL_t mode)
 Set the 802.1CB RTAG mode for the specified interface. More...
 
open_error_t openapiDot1cbSaModeGet (openapiClientHandle_t *client_handle, OPEN_CONTROL_t *mode)
 Get the SA-MAC/VLAN flow association mode. More...
 
open_error_t openapiDot1cbSaModeSet (openapiClientHandle_t *client_handle, OPEN_CONTROL_t mode)
 Set the SA-MAC/VLAN flow association mode. More...
 
open_error_t openapiDot1cbStatsClear (openapiClientHandle_t *client_handle)
 Clear all the 802.1CB statistics. More...
 
open_error_t openapiFilterFlowIdGet (openapiClientHandle_t *client_handle, open_buffdesc *buf, uint32_t vlanID, uint32_t *flowId)
 Get the configured flow ID. More...
 
open_error_t openapiFilterFlowTypeGet (openapiClientHandle_t *client_handle, open_buffdesc *buf, uint32_t vlanID, OPEN_DOT1CB_FLOW_TYPE_t *flowType)
 Get the configured flow type. More...
 
open_error_t openapiFilterFlowTypeIdSet (openapiClientHandle_t *client_handle, open_buffdesc *buf, uint32_t vlanID, OPEN_DOT1CB_FLOW_TYPE_t flowType, uint32_t flowId)
 Set the flow type and ID of an existing macfilter. More...
 

Detailed Description

Enumeration Type Documentation

Enumerator
OPEN_DOT1CB_FLOW_TYPE_NONE 

none

OPEN_DOT1CB_FLOW_TYPE_INITIATOR 

initiator

OPEN_DOT1CB_FLOW_TYPE_TRANSIT 

transit

Definition at line 56 of file openapi_dot1cb.h.

Function Documentation

open_error_t openapiDot1cbApiDot1cbEnabledVlanNextGet ( openapiClientHandle_t client_handle,
uint32_t *  vid 
)

Get the next 802.1CB enabled VLAN.

Parameters
[in]client_handleclient handle from registration API
[in,out]vidVLAN identifier
Return values
OPEN_E_NONEOn success.
OPEN_E_FAILOn failure.
OPEN_E_PARAMInvalid argument.
OPEN_E_INTERNALInternal error.
Note
Input VLAN value 0 to get the first 802.1CB enabled VLAN.

OpEN API Version: 1.20

Examples:
dot1cb_example.c.
open_error_t openapiDot1cbApiInitFlowGet ( openapiClientHandle_t client_handle,
uint32_t  flowId,
uint32_t *  classifiers,
uint32_t *  nextTxSequence,
uint64_t *  txPackets 
)

Get the 802.1CB initiator flow and its status/statistics.

Parameters
[in]client_handleclient handle from registration API
[in]flowIdinitiator flow identifier
[out]classifiersnumber of classifiers using this flow
[out]nextTxSequencenext sequence number in the RTAG
[out]txPacketsnumber of packets sent by the switch that match this flow
Return values
OPEN_E_NONEOn success.
OPEN_E_FAILOn failure.
OPEN_E_PARAMInvalid argument.
OPEN_E_INTERNALInternal error.

OpEN API Version: 1.20

Examples:
dot1cb_example.c.
open_error_t openapiDot1cbApiInitFlowNextGet ( openapiClientHandle_t client_handle,
uint32_t *  flowId,
uint32_t *  classifiers,
uint32_t *  nextTxSequence,
uint64_t *  txPackets 
)

Get the next 802.1CB initiator flow and its status/statistics.

Parameters
[in]client_handleclient handle from registration API
[in,out]flowIdinitiator flow identifier
[out]classifiersnumber of classifiers using this flow
[out]nextTxSequencenext sequence number in the RTAG
[out]txPacketsnumber of packets sent by the switch that match this flow
Return values
OPEN_E_NONEOn success.
OPEN_E_FAILOn failure.
OPEN_E_PARAMInvalid argument.
OPEN_E_INTERNALInternal error.

OpEN API Version: 1.20

Examples:
dot1cb_example.c.
open_error_t openapiDot1cbApiNumDot1cbVlansGet ( openapiClientHandle_t client_handle,
uint32_t *  value 
)

Get the number of 802.1CB enabled VLANs.

Parameters
[in]client_handleclient handle from registration API
[out]valuenumber of VLANs enabled for 802.1CB
Return values
OPEN_E_NONEOn success.
OPEN_E_PARAMInvalid argument.
OPEN_E_INTERNALInternal error.

OpEN API Version: 1.20

Examples:
dot1cb_example.c.
open_error_t openapiDot1cbApiTransitFlowAcceptanceWindowSizeSet ( openapiClientHandle_t client_handle,
uint32_t  flowId,
uint32_t  acceptanceWindow 
)

Set the acceptance window size for an 802.1CB transit flow.

Parameters
[in]client_handleclient handle from registration API
[in]flowIdtransit flow identifier
[in]acceptanceWindowacceptance window size in bytes
Return values
OPEN_E_NONEOn success.
OPEN_E_FAILOn failure.
OPEN_E_PARAMInvalid argument.
OPEN_E_INTERNALInternal error.

OpEN API Version: 1.20

Examples:
dot1cb_example.c.
open_error_t openapiDot1cbApiTransitFlowAgeTimeSet ( openapiClientHandle_t client_handle,
uint32_t  flowId,
uint32_t  ageTime 
)

Set the age time for an 802.1CB transit flow.

Parameters
[in]client_handleclient handle from registration API
[in]flowIdtransit flow identifier
[in]ageTimeage time in 10ms ticks
Return values
OPEN_E_NONEOn success.
OPEN_E_FAILOn failure.
OPEN_E_PARAMInvalid argument.
OPEN_E_INTERNALInternal error.

OpEN API Version: 1.20

Examples:
dot1cb_example.c.
open_error_t openapiDot1cbApiTransitFlowConfigGet ( openapiClientHandle_t client_handle,
uint32_t  flowId,
uint32_t *  historyWindow,
uint32_t *  acceptanceWindow,
uint32_t *  ageTime 
)

Get the 802.1CB transit flow configuration.

Parameters
[in]client_handleclient handle from registration API
[in]flowIdtransit flow identifier
[out]historyWindowhistory window size
[out]acceptanceWindowacceptance window size
[out]ageTimeage time in 10ms ticks
Return values
OPEN_E_NONEOn success.
OPEN_E_FAILOn failure.
OPEN_E_PARAMInvalid argument.
OPEN_E_INTERNALInternal error.

OpEN API Version: 1.20

Examples:
dot1cb_example.c.
open_error_t openapiDot1cbApiTransitFlowGet ( openapiClientHandle_t client_handle,
uint32_t  flowId,
uint32_t *  classifiers,
uint32_t *  lastRxSequence,
uint64_t *  matchingPackets,
uint64_t *  acceptedPackets,
uint64_t *  duplicatePackets 
)

Get the 802.1CB transit flow and its status/statistics.

Parameters
[in]client_handleclient handle from registration API
[in]flowIdtransit flow identifier
[out]classifiersnumber of classifiers using this flow
[out]lastRxSequencelast accepted sequence number on this flow
[out]matchingPacketsnumber of packets received by the switch that match this flow
[out]acceptedPacketsnumber of packets received by the switch that match this flow and are not discarded
[out]duplicatePacketsnumber of duplicate packets received by the switch that match this flow and are discarded
Return values
OPEN_E_NONEOn success.
OPEN_E_FAILOn failure.
OPEN_E_PARAMInvalid argument.
OPEN_E_INTERNALInternal error.

OpEN API Version: 1.20

Examples:
dot1cb_example.c.
open_error_t openapiDot1cbApiTransitFlowHistoryWindowSizeSet ( openapiClientHandle_t client_handle,
uint32_t  flowId,
uint32_t  historyWindow 
)

Set the history window size for an 802.1CB transit flow.

Parameters
[in]client_handleclient handle from registration API
[in]flowIdtransit flow identifier
[in]historyWindowhistory window size in bytes
Return values
OPEN_E_NONEOn success.
OPEN_E_FAILOn failure.
OPEN_E_PARAMInvalid argument.
OPEN_E_INTERNALInternal error.

OpEN API Version: 1.20

Examples:
dot1cb_example.c.
open_error_t openapiDot1cbApiTransitFlowNextGet ( openapiClientHandle_t client_handle,
uint32_t *  flowId,
uint32_t *  classifiers,
uint32_t *  lastRxSequence,
uint64_t *  matchingPackets,
uint64_t *  acceptedPackets,
uint64_t *  duplicatePackets 
)

Get the next 802.1CB transit flow and its status/statistics.

Parameters
[in]client_handleclient handle from registration API
[in,out]flowIdtransit flow identifier
[out]classifiersnumber of classifiers using this flow
[out]lastRxSequencelast accepted sequence number on this flow
[out]matchingPacketsnumber of packets received by the switch that match this flow
[out]acceptedPacketsnumber of packets received by the switch that match this flow and are not discarded
[out]duplicatePacketsnumber of duplicate packets received by the switch that match this flow and are discarded
Return values
OPEN_E_NONEOn success.
OPEN_E_FAILOn failure.
OPEN_E_PARAMInvalid argument.
OPEN_E_INTERNALInternal error.

OpEN API Version: 1.20

Examples:
dot1cb_example.c.
open_error_t openapiDot1cbForwardArpNdpModeGet ( openapiClientHandle_t client_handle,
uint32_t  vlanID,
OPEN_CONTROL_t mode 
)

Get the 802.1CB ARP/NDP forwarding mode for a given VLAN.

Parameters
[in]client_handleclient handle from registration API
[in]vlanIDVLAN identifier
-Minimum value OPENAPI_DOT1Q_MIN_VLAN_ID
-Maximum value OPENAPI_DOT1Q_MAX_VLAN_ID
[out]modeconfigured 802.1cb ARP/NDP forwarding mode
Return values
OPEN_E_NONEOn success.
OPEN_E_FAILOn failure.
OPEN_E_PARAMInvalid argument.
OPEN_E_INTERNALInternal error.

OpEN API Version: 1.20

Examples:
dot1cb_example.c.
open_error_t openapiDot1cbForwardArpNdpModeSet ( openapiClientHandle_t client_handle,
uint32_t  vlanID,
OPEN_CONTROL_t  mode 
)

Set the 802.1CB ARP/NDP forwarding mode for a given VLAN.

Parameters
[in]client_handleclient handle from registration API
[in]vlanIDVLAN identifier
-Minimum value OPENAPI_DOT1Q_MIN_VLAN_ID
-Maximum value OPENAPI_DOT1Q_MAX_VLAN_ID
[in]mode802.1cb ARP/NDP forwarding mode to be set
Return values
OPEN_E_NONEOn success.
OPEN_E_FAILOn failure.
OPEN_E_PARAMInvalid argument.
OPEN_E_INTERNALInternal error.

OpEN API Version: 1.20

Examples:
dot1cb_example.c.
open_error_t openapiDot1cbGlobalStatsGet ( openapiClientHandle_t client_handle,
OPEN_DOT1CB_GLOBAL_STATS_t stat 
)

Get the 802.1CB global statistics.

Parameters
[in]client_handleclient handle from registration API
[out]stat802.1CB global statistics
Return values
OPEN_E_NONEOn success.
OPEN_E_FAILOn failure.
OPEN_E_PARAMInvalid argument.
OPEN_E_INTERNALInternal error.
Note
Statistics are computed as follows: current = latest - initial

OpEN API Version: 1.20

Examples:
dot1cb_example.c.
open_error_t openapiDot1cbIntfNextGet ( openapiClientHandle_t client_handle,
uint32_t  ifNum,
uint32_t *  nextIfNum 
)

Get the next valid 802.1CB interface.

Parameters
[in]client_handleclient handle from registration API
[in]ifNuminterface
-Maximum value OPENAPI_DOT1CB_INTF_MAX_COUNT
[out]nextIfNumpointer to next interface
Return values
OPEN_E_NONEOn success.
OPEN_E_FAILOn failure.
OPEN_E_PARAMInvalid argument.
OPEN_E_INTERNALInternal error.

OpEN API Version: 1.20

Examples:
dot1cb_example.c.
open_error_t openapiDot1cbIntfStatsGet ( openapiClientHandle_t client_handle,
uint32_t  ifNum,
OPEN_DOT1CB_INTF_STATS_t stat 
)

Get the 802.1CB statistics for the specified interface.

Parameters
[in]client_handleclient handle from registration API
[in]ifNuminterface
-Maximum value OPENAPI_DOT1CB_INTF_MAX_COUNT
[out]stat802.1CB interface statistics
Return values
OPEN_E_NONEOn success.
OPEN_E_FAILOn failure.
OPEN_E_PARAMInvalid argument.
OPEN_E_INTERNALInternal error.
Note
Statistics are computed as follows: current = latest - initial

OpEN API Version: 1.20

Examples:
dot1cb_example.c.
open_error_t openapiDot1cbIpv4ClassifierAdd ( openapiClientHandle_t client_handle,
open_inet_addr_t srcAddr,
uint32_t  srcMaskLen,
open_inet_addr_t dstAddr,
uint32_t  dstMaskLen,
OPEN_DOT1CB_FLOW_TYPE_t  flowType,
uint32_t  flowId 
)

Add an IPv4 classifier.

Parameters
[in]client_handleclient handle from registration API
[in]srcAddrsource IP address
[in]srcMaskLensource IP mask length
[in]dstAddrdestination IP address
[in]dstMaskLendestination IP mask length
[in]flowTypeflow type
[in]flowIdflow identifier
Return values
OPEN_E_NONEOn success.
OPEN_E_FAILOn failure.
OPEN_E_PARAMInvalid argument.
OPEN_E_INTERNALInternal error.
OPEN_E_EXISTSAlready exists.
OPEN_E_FULLMaximum count reached or table full.

OpEN API Version: 1.20

Examples:
dot1cb_example.c.
open_error_t openapiDot1cbIpv4ClassifierCountGet ( openapiClientHandle_t client_handle,
uint32_t *  value 
)

Get the number of configured IPv4 classifiers.

Parameters
[in]client_handleclient handle from registration API
[out]valuenumber of IPv4 classifiers
Return values
OPEN_E_NONEOn success.
OPEN_E_PARAMInvalid argument.
OPEN_E_INTERNALInternal error.

OpEN API Version: 1.20

Examples:
dot1cb_example.c.
open_error_t openapiDot1cbIpv4ClassifierDelete ( openapiClientHandle_t client_handle,
open_inet_addr_t srcAddr,
uint32_t  srcMaskLen,
open_inet_addr_t dstAddr,
uint32_t  dstMaskLen 
)

Delete an IPv4 classifier.

Parameters
[in]client_handleclient handle from registration API
[in]srcAddrsource IP address
[in]srcMaskLensource IP mask length
[in]dstAddrdestination IP address
[in]dstMaskLendestination IP mask length
Return values
OPEN_E_NONEOn success.
OPEN_E_PARAMInvalid argument.
OPEN_E_INTERNALInternal error.
OPEN_E_NOT_FOUNDParameter not found.

OpEN API Version: 1.20

Examples:
dot1cb_example.c.
open_error_t openapiDot1cbIpv4ClassifierGet ( openapiClientHandle_t client_handle,
open_inet_addr_t srcAddr,
uint32_t  srcMaskLen,
open_inet_addr_t dstAddr,
uint32_t  dstMaskLen,
OPEN_DOT1CB_FLOW_TYPE_t flowType,
uint32_t *  flowId 
)

Get an IPv4 classifier.

Parameters
[in]client_handleclient handle from registration API
[in]srcAddrsource IP address
[in]srcMaskLensource IP mask length
[in]dstAddrdestination IP address
[in]dstMaskLendestination IP mask length
[out]flowTypeflow type
[out]flowIdflow identifier
Return values
OPEN_E_NONEOn success.
OPEN_E_PARAMInvalid argument.
OPEN_E_INTERNALInternal error.
OPEN_E_NOT_FOUNDParameter not found.

OpEN API Version: 1.20

Examples:
dot1cb_example.c.
open_error_t openapiDot1cbIpv4ClassifierInHardwareGet ( openapiClientHandle_t client_handle,
uint32_t *  value 
)

Get the status flag indicating whether IPv4 classifiers are installed in the hardware.

Parameters
[in]client_handleclient handle from registration API
[out]value1-Installed, 0-Not Installed
Return values
OPEN_E_NONEOn success.
OPEN_E_PARAMInvalid argument.
OPEN_E_INTERNALInternal error.

OpEN API Version: 1.20

Examples:
dot1cb_example.c.
open_error_t openapiDot1cbIpv4ClassifierNextGet ( openapiClientHandle_t client_handle,
open_inet_addr_t srcAddr,
uint32_t *  srcMaskLen,
open_inet_addr_t dstAddr,
uint32_t *  dstMaskLen,
OPEN_DOT1CB_FLOW_TYPE_t flowType,
uint32_t *  flowId 
)

Get the next IPv4 classifier.

Parameters
[in]client_handleclient handle from registration API
[in,out]srcAddrsource IP address
[in,out]srcMaskLensource IP mask length
[in,out]dstAddrdestination IP address
[in,out]dstMaskLendestination IP mask length
[out]flowTypeflow type
[out]flowIdflow identifier
Return values
OPEN_E_NONEOn success.
OPEN_E_PARAMInvalid argument.
OPEN_E_INTERNALInternal error.
OPEN_E_NOT_FOUNDParameter not found.

OpEN API Version: 1.20

Examples:
dot1cb_example.c.
open_error_t openapiDot1cbIpv6ClassifierAdd ( openapiClientHandle_t client_handle,
open_in6_addr_t srcAddr,
uint32_t  srcMaskLen,
open_in6_addr_t dstAddr,
uint32_t  dstMaskLen,
OPEN_DOT1CB_FLOW_TYPE_t  flowType,
uint32_t  flowId 
)

Add an IPv6 classifier.

Parameters
[in]client_handleclient handle from registration API
[in]srcAddrsource IP address
[in]srcMaskLensource IP mask length
[in]dstAddrdestination IP address
[in]dstMaskLendestination IP mask length
[in]flowTypeflow type
[in]flowIdflow identifier
Return values
OPEN_E_NONEOn success.
OPEN_E_FAILOn failure.
OPEN_E_PARAMInvalid argument.
OPEN_E_INTERNALInternal error.
OPEN_E_EXISTSAlready exists.
OPEN_E_FULLMaximum count reached or table full.
OPEN_E_UNAVAILIPv6 feature not supported.

OpEN API Version: 1.20

Examples:
dot1cb_example.c.
open_error_t openapiDot1cbIpv6ClassifierCountGet ( openapiClientHandle_t client_handle,
uint32_t *  value 
)

Get the number of configured IPv6 classifiers.

Parameters
[in]client_handleclient handle from registration API
[out]valuenumber of IPv6 classifiers
Return values
OPEN_E_NONEOn success.
OPEN_E_PARAMInvalid argument.
OPEN_E_INTERNALInternal error.
OPEN_E_UNAVAILIPv6 feature not supported.

OpEN API Version: 1.20

Examples:
dot1cb_example.c.
open_error_t openapiDot1cbIpv6ClassifierDelete ( openapiClientHandle_t client_handle,
open_in6_addr_t srcAddr,
uint32_t  srcMaskLen,
open_in6_addr_t dstAddr,
uint32_t  dstMaskLen 
)

Delete an IPv6 classifier.

Parameters
[in]client_handleclient handle from registration API
[in]srcAddrsource IP address
[in]srcMaskLensource IP mask length
[in]dstAddrdestination IP address
[in]dstMaskLendestination IP mask length
Return values
OPEN_E_NONEOn success.
OPEN_E_PARAMInvalid argument.
OPEN_E_INTERNALInternal error.
OPEN_E_NOT_FOUNDParameter not found.
OPEN_E_UNAVAILIPv6 feature not supported.

OpEN API Version: 1.20

Examples:
dot1cb_example.c.
open_error_t openapiDot1cbIpv6ClassifierGet ( openapiClientHandle_t client_handle,
open_in6_addr_t srcAddr,
uint32_t  srcMaskLen,
open_in6_addr_t dstAddr,
uint32_t  dstMaskLen,
OPEN_DOT1CB_FLOW_TYPE_t flowType,
uint32_t *  flowId 
)

Get an IPv6 classifier.

Parameters
[in]client_handleclient handle from registration API
[in]srcAddrsource IP address
[in]srcMaskLensource IP mask length
[in]dstAddrdestination IP address
[in]dstMaskLendestination IP mask length
[out]flowTypeflow type
[out]flowIdflow identifier
Return values
OPEN_E_NONEOn success.
OPEN_E_PARAMInvalid argument.
OPEN_E_INTERNALInternal error.
OPEN_E_NOT_FOUNDParameter not found.
OPEN_E_UNAVAILIPv6 feature not supported.

OpEN API Version: 1.20

Examples:
dot1cb_example.c.
open_error_t openapiDot1cbIpv6ClassifierInHardwareGet ( openapiClientHandle_t client_handle,
uint32_t *  value 
)

Get the status flag indicating whether IPv6 classifiers are installed in the hardware.

Parameters
[in]client_handleclient handle from registration API
[out]value1-Installed, 0-Not Installed
Return values
OPEN_E_NONEOn success.
OPEN_E_PARAMInvalid argument.
OPEN_E_INTERNALInternal error.
OPEN_E_UNAVAILIPv6 feature not supported.

OpEN API Version: 1.20

Examples:
dot1cb_example.c.
open_error_t openapiDot1cbIpv6ClassifierNextGet ( openapiClientHandle_t client_handle,
open_in6_addr_t srcAddr,
uint32_t *  srcMaskLen,
open_in6_addr_t dstAddr,
uint32_t *  dstMaskLen,
OPEN_DOT1CB_FLOW_TYPE_t flowType,
uint32_t *  flowId 
)

Get the next IPv6 classifier.

Parameters
[in]client_handleclient handle from registration API
[in,out]srcAddrsource IP address
[in,out]srcMaskLensource IP mask length
[in,out]dstAddrdestination IP address
[in,out]dstMaskLendestination IP mask length
[out]flowTypeflow type
[out]flowIdflow identifier
Return values
OPEN_E_NONEOn success.
OPEN_E_PARAMInvalid argument.
OPEN_E_INTERNALInternal error.
OPEN_E_NOT_FOUNDParameter not found.
OPEN_E_UNAVAILIPv6 feature not supported.

OpEN API Version: 1.20

Examples:
dot1cb_example.c.
open_error_t openapiDot1cbModeGet ( openapiClientHandle_t client_handle,
uint32_t  vlanID,
OPEN_CONTROL_t mode 
)

Get the 802.1CB mode for a given VLAN.

Parameters
[in]client_handleclient handle from registration API
[in]vlanIDVLAN identifier
-Minimum value OPENAPI_DOT1Q_MIN_VLAN_ID
-Maximum value OPENAPI_DOT1Q_MAX_VLAN_ID
[out]modeconfigured 802.1cb mode
Return values
OPEN_E_NONEOn success.
OPEN_E_FAILOn failure.
OPEN_E_PARAMInvalid argument.
OPEN_E_INTERNALInternal error.

OpEN API Version: 1.20

Examples:
dot1cb_example.c.
open_error_t openapiDot1cbModeSet ( openapiClientHandle_t client_handle,
uint32_t  vlanID,
OPEN_CONTROL_t  mode 
)

Set the 802.1CB mode for a given VLAN.

Parameters
[in]client_handleclient handle from registration API
[in]vlanIDVLAN identifier
-Minimum value OPENAPI_DOT1Q_MIN_VLAN_ID
-Maximum value OPENAPI_DOT1Q_MAX_VLAN_ID
[in]mode802.1cb mode to be set
Return values
OPEN_E_NONEOn success.
OPEN_E_FAILOn failure.
OPEN_E_PARAMInvalid argument.
OPEN_E_INTERNALInternal error.

OpEN API Version: 1.20

Examples:
dot1cb_example.c.
open_error_t openapiDot1cbNumActiveInititatorFlowsGet ( openapiClientHandle_t client_handle,
uint32_t *  value 
)

Get the number of initiator flows installed in the hardware.

Parameters
[in]client_handleclient handle from registration API
[out]valuenumber of initiator flows
Return values
OPEN_E_NONEOn success.
OPEN_E_PARAMInvalid argument.
OPEN_E_INTERNALInternal error.

OpEN API Version: 1.20

Examples:
dot1cb_example.c.
open_error_t openapiDot1cbNumActiveTransitFlowsGet ( openapiClientHandle_t client_handle,
uint32_t *  value 
)

Get the number of transit flows installed in the hardware.

Parameters
[in]client_handleclient handle from registration API
[out]valuenumber of transit flows
Return values
OPEN_E_NONEOn success.
OPEN_E_PARAMInvalid argument.
OPEN_E_INTERNALInternal error.

OpEN API Version: 1.20

Examples:
dot1cb_example.c.
open_error_t openapiDot1cbNumMfdbClassifiersGet ( openapiClientHandle_t client_handle,
uint32_t *  value 
)

Get the number of MFDB entries associated with flows.

Parameters
[in]client_handleclient handle from registration API
[out]valuenumber of MFDB entries
Return values
OPEN_E_NONEOn success.
OPEN_E_PARAMInvalid argument.
OPEN_E_INTERNALInternal error.

OpEN API Version: 1.20

Examples:
dot1cb_example.c.
open_error_t openapiDot1cbRtagModeGet ( openapiClientHandle_t client_handle,
uint32_t  ifNum,
OPEN_CONTROL_t mode 
)

Get the 802.1CB RTAG mode for the specified interface.

Parameters
[in]client_handleclient handle from registration API
[in]ifNuminterface
[out]modeconfigured RTAG mode
Return values
OPEN_E_NONEOn success.
OPEN_E_FAILOn failure.
OPEN_E_PARAMInvalid argument.
OPEN_E_INTERNALInternal error.

OpEN API Version: 1.20

Examples:
dot1cb_example.c.
open_error_t openapiDot1cbRtagModeSet ( openapiClientHandle_t client_handle,
uint32_t  ifNum,
OPEN_CONTROL_t  mode 
)

Set the 802.1CB RTAG mode for the specified interface.

Parameters
[in]client_handleclient handle from registration API
[in]ifNuminterface
[in]modeRTAG mode
Return values
OPEN_E_NONEOn success.
OPEN_E_FAILOn failure.
OPEN_E_PARAMInvalid argument.
OPEN_E_INTERNALInternal error.

OpEN API Version: 1.20

Examples:
dot1cb_example.c.
open_error_t openapiDot1cbSaModeGet ( openapiClientHandle_t client_handle,
OPEN_CONTROL_t mode 
)

Get the SA-MAC/VLAN flow association mode.

Parameters
[in]client_handleclient handle from registration API
[out]modeSA-MAC/VLAN flow association mode
Return values
OPEN_E_NONEOn success.
OPEN_E_PARAMInvalid argument.
OPEN_E_INTERNALInternal error.

OpEN API Version: 1.20

Examples:
dot1cb_example.c.
open_error_t openapiDot1cbSaModeSet ( openapiClientHandle_t client_handle,
OPEN_CONTROL_t  mode 
)

Set the SA-MAC/VLAN flow association mode.

Parameters
[in]client_handleclient handle from registration API
[in]mode802.1cb mode to be set
Return values
OPEN_E_NONEOn success.
OPEN_E_FAILOn failure.
OPEN_E_PARAMInvalid argument.
OPEN_E_INTERNALInternal error.

OpEN API Version: 1.20

Examples:
dot1cb_example.c.
open_error_t openapiDot1cbStatsClear ( openapiClientHandle_t client_handle)

Clear all the 802.1CB statistics.

Parameters
[in]client_handleclient handle from registration API
Return values
OPEN_E_NONEOn success.
OPEN_E_FAILOn failure.
OPEN_E_PARAMInvalid argument.
OPEN_E_INTERNALInternal error.

OpEN API Version: 1.20

Examples:
dot1cb_example.c.
open_error_t openapiFilterFlowIdGet ( openapiClientHandle_t client_handle,
open_buffdesc buf,
uint32_t  vlanID,
uint32_t *  flowId 
)

Get the configured flow ID.

Parameters
[in]client_handleclient handle from registration API
[in]bufstatic MAC address for the filter in one of the following formats: "xx:xx:xx:xx:xx:xx" or "xx-xx-xx-xx-xx-xx" or "xxxx.xxxx.xxxx"
[in]vlanIDVLAN ID for the filter
-Minimum value OPENAPI_DOT1Q_MIN_VLAN_ID
-Maximum value OPENAPI_DOT1Q_MAX_VLAN_ID
[out]flowIdconfigured 802.1cb flow ID
Return values
OPEN_E_NONEOn success.
OPEN_E_FAILOn failure.
OPEN_E_PARAMInvalid argument.
OPEN_E_INTERNALInternal error.

OpEN API Version: 1.20

Examples:
dot1cb_example.c.
open_error_t openapiFilterFlowTypeGet ( openapiClientHandle_t client_handle,
open_buffdesc buf,
uint32_t  vlanID,
OPEN_DOT1CB_FLOW_TYPE_t flowType 
)

Get the configured flow type.

Parameters
[in]client_handleclient handle from registration API
[in]bufstatic MAC address for the filter in one of the following formats: "xx:xx:xx:xx:xx:xx" or "xx-xx-xx-xx-xx-xx" or "xxxx.xxxx.xxxx"
[in]vlanIDVLAN ID for the filter
-Minimum value OPENAPI_DOT1Q_MIN_VLAN_ID
-Maximum value OPENAPI_DOT1Q_MAX_VLAN_ID
[out]flowTypeconfigured 802.1cb flow type
Return values
OPEN_E_NONEOn success.
OPEN_E_FAILOn failure.
OPEN_E_PARAMInvalid argument.
OPEN_E_INTERNALInternal error.

OpEN API Version: 1.20

Examples:
dot1cb_example.c.
open_error_t openapiFilterFlowTypeIdSet ( openapiClientHandle_t client_handle,
open_buffdesc buf,
uint32_t  vlanID,
OPEN_DOT1CB_FLOW_TYPE_t  flowType,
uint32_t  flowId 
)

Set the flow type and ID of an existing macfilter.

Parameters
[in]client_handleclient handle from registration API
[in]bufstatic MAC address for the filter in one of the following formats: "xx:xx:xx:xx:xx:xx" or "xx-xx-xx-xx-xx-xx" or "xxxx.xxxx.xxxx"
[in]vlanIDVLAN ID for the filter
-Minimum value OPENAPI_DOT1Q_MIN_VLAN_ID
-Maximum value OPENAPI_DOT1Q_MAX_VLAN_ID
[in]flowType802.1cb flow type to be set
[in]flowId802.1cb flow ID to be set
Return values
OPEN_E_NONEOn success.
OPEN_E_FAILOn failure.
OPEN_E_PARAMInvalid argument.
OPEN_E_INTERNALInternal error.

OpEN API Version: 1.20

Examples:
dot1cb_example.c.