38 #ifndef OPENAPI_MFDB_H_INCLUDED
39 #define OPENAPI_MFDB_H_INCLUDED
43 #define OPEN_MATCH_EXACT 1
44 #define OPEN_MATCH_GETNEXT 2
45 #define OPEN_MATCH_FREE 3
47 #define OPEN_MFDB_INTF_LIST_LENGTH 4096
48 #define OPEN_MFDB_VIDMAC_LENGTH 24
49 #define OPEN_MFDB_MAC_LENGTH 18
50 #define OPENAPI_MFDB_DESCR_LEN 16
55 OPEN_MFDB_PROTOCOL_STATIC = 1,
69 OPEN_MFDB_TYPE_STATIC = 0,
318 uint32_t * maxEntries);
335 uint32_t * mostEntries);
352 uint32_t * currEntries);
OPEN_MFDB_PROTOCOL_TYPE_t
OpEN uses this enumeration to define type of MFDB protocol.
OPEN_MPLS_LFDB_PROTOCOL_t protocol
Protocol by which the label is created.
MFDB potocol type is MMRP.
MFDB potocol type is MVR.
open_error_t openapiMfdbEntryDataGet(openapiClientHandle_t *client_handle, open_buffdesc *vidMac, OPEN_MFDB_PROTOCOL_TYPE_t nextProt, open_buffdesc *mac, uint32_t *vlanId, OPEN_MFDB_PROTOCOL_TYPE_t *compId, OPEN_MFDB_ENTRY_TYPE_t *type, open_buffdesc *desc, open_buffdesc *frwdIntMask, open_buffdesc *fltIntMask, open_buffdesc *absPortMask)
Returns the MFDB Entry data.
open_error_t
OPEN uses these enumerators to indicate the error codes.
open_error_t openapiMfdbEntryLearntIntfGetNext(openapiClientHandle_t *client_handle, open_buffdesc *vidMac, uint32_t matchType, open_buffdesc *absMask)
Returns the forwarding interfaces of the next learned VLANID-MAC entry.
open_error_t openapiMfdbEntryProtocolGetExact(openapiClientHandle_t *client_handle, open_buffdesc *vidMac, OPEN_MFDB_PROTOCOL_TYPE_t protocol)
Checks if a VLANID-MAC entry, that uses a specific protocol, exists in the MFDB table.
MFDB potocol type is static.
MFDB potocol type is MSRP.
open_error_t openapiMfdbEntryGetNext(openapiClientHandle_t *client_handle, open_buffdesc *vidMac, OPEN_MFDB_PROTOCOL_TYPE_t *nextProt)
Returns the next VLANID-MAC entry.
open_error_t openapiMfdbMostEntriesGet(openapiClientHandle_t *client_handle, uint32_t *mostEntries)
Returns the most number of entries ever in the MFDB table.
MFDB potocol type is GMRP.
open_error_t openapiMfdbCurrEntriesGet(openapiClientHandle_t *client_handle, uint32_t *currEntries)
Returns the number of current entries in the MFDB table.
OPEN_MFDB_ENTRY_TYPE_t
OpEN uses this enumeration to define type of MFDB entry.
open_error_t openapiMfdbEntryGetFirst(openapiClientHandle_t *client_handle, open_buffdesc *vidMac, OPEN_MFDB_PROTOCOL_TYPE_t *prot)
Returns the first VLANID-MAC entry.
open_error_t openapiMfdbEntryFwdIntfGetExact(openapiClientHandle_t *client_handle, open_buffdesc *vidMac)
Checks if a VLANID-MAC entry exists in the MFDB table.
MFDB entry type is static.
open_error_t openapiMfdbMaxTableEntriesGet(openapiClientHandle_t *client_handle, uint32_t *maxEntries)
Returns the maximum number of entries that the MFDB table can hold.
MFDB potocol type is MLD.
open_error_t openapiMfdbEntryFwdIntfGetNext(openapiClientHandle_t *client_handle, open_buffdesc *vidMac, uint32_t matchType, open_buffdesc *absMask)
Returns the forwarding interfaces of the next VLANID-MAC entry.
MFDB potocol type is IGMP.
open_error_t openapiMfdbComponentEntryGetNext(openapiClientHandle_t *client_handle, open_buffdesc *vidMac, OPEN_MFDB_PROTOCOL_TYPE_t compId, OPEN_MFDB_PROTOCOL_TYPE_t *nextCompId, OPEN_MFDB_ENTRY_TYPE_t *type, open_buffdesc *desc, open_buffdesc *frwdPortMask, open_buffdesc *fltPortMask)
Returns the next VLANID-MAC entry of the same user.