38 #ifndef OPENAPI_SNOOPING_H_INCLUDED
39 #define OPENAPI_SNOOPING_H_INCLUDED
43 #define OPEN_INTF_LEN 4
47 OPEN_SNOOP_SSM_FILTER_MODE_NONE = 0,
54 OPEN_SNOOP_QUERIER_DISABLED = 0,
143 uint32_t * processedFrames,
166 uint32_t * forwardedFrames,
393 uint32_t * queryTime,
441 uint32_t * responseTime,
466 uint32_t responseTime,
605 uint32_t *pIntIfNum, uint32_t *pVlanId,
630 uint32_t *pIntIfNum, uint32_t *pVlanId,
655 uint32_t *pIntIfNum, uint32_t *pVlanId);
679 uint32_t *pIntIfNum, uint32_t *pVlanId);
697 uint8_t family, uint32_t *currEntries);
817 uint32_t *maxEntries);
837 uint32_t *mostEntries);
989 uint16_t *groupMembershipInterval,
1011 uint16_t groupMembershipInterval,
1033 uint16_t *responseTime,
1054 uint16_t responseTime,
1075 uint32_t *snoopVlanMode,
1096 uint32_t snoopVlanMode,
1241 uint32_t *adminMode,
1279 uint32_t *expiryInterval,
1298 uint32_t expiryInterval,
1369 uint32_t *maxRespTime,
1435 uint32_t *queryInterval,
1455 uint32_t queryInterval,
open_error_t openapiSnoopQuerierVlanModeGet(openapiClientHandle_t *client_handle, uint32_t vlanId, OPEN_CONTROL_t *vlanMode, uint8_t family)
Gets the configured snooping querier mode for the specified vlanId of a snoop instance.
open_error_t openapiSnoopQuerierExpiryIntervalGet(openapiClientHandle_t *client_handle, uint32_t *expiryInterval, uint8_t family)
Gets the other querier expiry interval of a snoop instance.
open_error_t openapiSnoopVlanGroupMembershipIntervalSet(openapiClientHandle_t *client_handle, uint32_t vlanId, uint16_t groupMembershipInterval, uint8_t family)
Sets the configured IGMP/MLD snooping group membership interval for the specified VLAN...
open_error_t openapiSnoopSSMGroupFilterModeGet(openapiClientHandle_t *client_handle, uint8_t family, open_inet_addr_t *pGroup, uint32_t *pIntIfNum, uint32_t *pVlanId, OPEN_SNOOP_SSM_FILTER_MODE_t *pfilterMode)
Gets the source filter mode (Include or Exclude) for the specified group on the specified interface a...
open_error_t openapiSnoopQuerierOperVersionGet(openapiClientHandle_t *client_handle, uint32_t vlanId, uint32_t *version, uint8_t family)
Gets the operational version of querier for specified VLAN ID of a snoop instance.
open_error_t openapiSnoopQuerierOperStateGet(openapiClientHandle_t *client_handle, uint32_t vlanId, uint32_t *state, uint8_t family)
Gets the operational state of querier for specified VLAN ID of a snoop instance.
open_error_t openapiSnoopQuerierVlanModeSet(openapiClientHandle_t *client_handle, uint32_t vlanId, OPEN_CONTROL_t vlanMode, uint8_t family)
Set the configured snooping querier mode for the specified vlanId of a snoop instance.
open_error_t openapiSnoopVlanNextGet(openapiClientHandle_t *client_handle, uint32_t vlanId, uint32_t *nextVlan)
Gets next VLAN ID for snooping configuration.
open_error_t openapiSnoopQuerierVlanElectionModeSet(openapiClientHandle_t *client_handle, uint32_t vlanId, uint32_t vlanMode, uint8_t family)
Sets the configured snooping querier election mode for the specified VLAN ID of a snoop instance...
open_error_t openapiSnoopSSMGroupLastReporterGet(openapiClientHandle_t *client_handle, uint8_t family, open_inet_addr_t *pGroup, uint32_t *pIntIfNum, uint32_t *pVlanId, open_inet_addr_t *pSrcIp)
Gets the IP address of the source of last membership report received for the specified group address ...
open_error_t openapiSnoopIntfResponseTimeGet(openapiClientHandle_t *client_handle, uint32_t intIfNum, uint32_t *responseTime, uint8_t family)
Returns the IGMP/MLD query response time for the specified interface.
open_error_t openapiSnoopVlanReportSuppModeGet(openapiClientHandle_t *client_handle, uint32_t vlanId, uint8_t family, OPEN_BOOL_t *reportSuppMode)
Get the configured IGMP/MLD snooping report suppression mode for the specified VLAN.
open_error_t openapiSnoopVlanProxyQuerierModeSet(openapiClientHandle_t *client_handle, uint32_t vlanId, uint32_t mode, uint8_t family)
Sets the configured snooping proxy querier mode for the specified VLAN of a snoop instance...
open_error_t openapiSnoopVlanModeGet(openapiClientHandle_t *client_handle, uint32_t vlanId, uint32_t *snoopVlanMode, uint8_t family)
Get the IGMP/MLD snooping mode corresponding to the VLAN ID.
open_error_t openapiSnoopQuerierQueryIntervalSet(openapiClientHandle_t *client_handle, uint32_t queryInterval, uint8_t family)
Sets the qnooping querier query interval of a snoop instance.
open_error_t openapiSnoopEntriesFlush(openapiClientHandle_t *client_handle, uint8_t family)
Flushes all Snooping entries and multicast router entries.
open_error_t openapiSnoopSSMMfdbEntryFirstGet(openapiClientHandle_t *client_handle, uint8_t family, open_inet_addr_t *pGroup, open_inet_addr_t *pSource, uint32_t *pVlanId)
Gets the first learnt entry from SSM MFDB.
open_error_t openapiSnoopQuerierVlanAddressSet(openapiClientHandle_t *client_handle, uint32_t vlanId, open_inet_addr_t *snoopQuerierAddr, uint8_t family)
Sets the snooping querier configured address for specified VLAN ID of a snoop instance.
open_error_t
OPEN uses these enumerators to indicate the error codes.
open_error_t openapiSnoopProxyQuerierAdminModeSet(openapiClientHandle_t *client_handle, OPEN_CONTROL_t adminMode, uint8_t family)
Sets the IGMP/MLD Proxy Querier Admin mode for the specified snooping instance.
open_error_t openapiSnoopIntfModeSet(openapiClientHandle_t *client_handle, uint32_t intIfNum, OPEN_CONTROL_t mode, uint8_t family)
Sets the IGMP/MLD Snooping mode for the specified interface.
open_error_t openapiSnoopIntfFastLeaveAdminModeSet(openapiClientHandle_t *client_handle, uint32_t intIfNum, OPEN_CONTROL_t mode, uint8_t family)
Sets the Fast-Leave Admin mode for the specified interface.
open_error_t openapiSnoopVlanFastLeaveModeGet(openapiClientHandle_t *client_handle, uint32_t vlanId, OPEN_BOOL_t *fastLeaveMode, uint8_t family)
Gets the configured IGMP/MLD snooping fast leave mode for the specified VLAN.
open_error_t openapiSnoopProtocolGet(openapiClientHandle_t *client_handle, uint8_t family, OPEN_BOOL_t *status)
Checks if the passed family type snooping is supported or not.
open_error_t openapiSnoopFloodUnknownAllPortsGet(openapiClientHandle_t *client_handle, OPEN_BOOL_t *floodAll)
Returns the configured mode for flooding unknown multicast traffic to all ports.
open_error_t openapiSnoopSSMMfdbEntryExcPortMaskGet(openapiClientHandle_t *client_handle, uint8_t family, open_inet_addr_t *pGroup, open_inet_addr_t *pSource, uint32_t *pVlanId, open_buffdesc *excPortMaskName)
Get the exclude port list for a given SSM MFDB entry.
open_error_t openapiSnoopAdminModeSet(openapiClientHandle_t *client_handle, OPEN_CONTROL_t adminMode, uint8_t family)
Sets the IGMP/MLD Snooping Admin mode.
open_error_t openapiSnoopSSMGroupRecordFirstGet(openapiClientHandle_t *client_handle, uint8_t family, open_inet_addr_t *pGroup, uint32_t *pIntIfNum, uint32_t *pVlanId)
Gets the first learnt entry from SSM group database.
open_error_t openapiSnoopQuerierVersionSet(openapiClientHandle_t *client_handle, uint32_t version, uint8_t family)
Sets the snooping querier configured version of a snoop instance.
open_error_t openapiSnoopVlanCheckValid(openapiClientHandle_t *client_handle, uint32_t vlanId)
Check if VLAN is eligible for snooping configuration.
open_error_t openapiSnoopIntfProxyQuerierModeSet(openapiClientHandle_t *client_handle, uint32_t intIfNum, OPEN_CONTROL_t mode, uint8_t family)
Sets the Proxy Querier Admin mode for the specified interface.
open_error_t openapiSnoopQuerierAddressSet(openapiClientHandle_t *client_handle, open_inet_addr_t *snoopQuerierAddr, uint8_t family)
Sets the snooping querier configured address of a snoop instance.
open_error_t openapiSnoopQuerierAdminModeGet(openapiClientHandle_t *client_handle, uint32_t *adminMode, uint8_t family)
Gets the snooping querier admin mode of a snoop instance.
open_error_t openapiSnoopIntfEnabledMaskSet(openapiClientHandle_t *client_handle, open_buffdesc *mask, uint8_t family)
Sets IGMP/MLD Snooping interface mode via a comma separated string.
open_error_t openapiSnoopQuerierAdminModeSet(openapiClientHandle_t *client_handle, uint32_t adminMode, uint8_t family)
Gets the Snooping Querier Admin mode of a snoop instance.
open_error_t openapiSnoopAutoVideoModeGet(openapiClientHandle_t *client_handle, OPEN_CONTROL_t *mode)
Gets the Auto-Video mode.
OPEN_SNOOP_QUERIER_STATE_t
open_error_t openapiSnoopVlanMaximumResponseTimeSet(openapiClientHandle_t *client_handle, uint32_t vlanId, uint16_t responseTime, uint8_t family)
Set response time for the specified VLAN.
open_error_t openapiSnoopProxyQuerierAdminModeGet(openapiClientHandle_t *client_handle, OPEN_CONTROL_t *adminMode, uint8_t family)
Returns the IGMP/MLD Proxy Querier Admin mode for the specified snooping instance.
open_error_t openapiSnoopQuerierExpiryIntervalSet(openapiClientHandle_t *client_handle, uint32_t expiryInterval, uint8_t family)
Sets the other querier expiry interval of a snoop instance.
open_error_t openapiSnoopQuerierLastQuerierVersionGet(openapiClientHandle_t *client_handle, uint32_t vlanId, uint32_t *version, uint8_t family)
Gets the detected last querier's version for specified VLAN ID of a snoop instance.
open_error_t openapiSnoopVlanModeSet(openapiClientHandle_t *client_handle, uint32_t vlanId, uint32_t snoopVlanMode, uint8_t family)
Set the IGMP/MLD snooping mode corresponding to the VLAN ID.
open_error_t openapiSnoopDataFramesForwardedGet(openapiClientHandle_t *client_handle, uint32_t *forwardedFrames, uint8_t family)
Returns the number of multicast data frames forwarded by the CPU.
OPEN_CONTROL_t
OPEN uses these enumerators to indicate enable or disable for a given config or status parameter...
open_error_t openapiSnoopAutoVideoVlanGet(openapiClientHandle_t *client_handle, uint32_t *vlanId)
Gets the Auto-Video VLAN.
open_error_t openapiSnoopQuerierLastQuerierAddressGet(openapiClientHandle_t *client_handle, uint32_t vlanId, open_inet_addr_t *querierAddr, uint8_t family)
Gets the detected last querier address for specified VLAN ID of a snoop instance. ...
open_error_t openapiSnoopSSMMfdbEntryIncPortMaskGet(openapiClientHandle_t *client_handle, uint8_t family, open_inet_addr_t *pGroup, open_inet_addr_t *pSource, uint32_t *pVlanId, open_buffdesc *incPortMaskName)
Get the include port list for a given SSM MFDB entry.
open_error_t openapiSnoopIntfResponseTimeSet(openapiClientHandle_t *client_handle, uint32_t intIfNum, uint32_t responseTime, uint8_t family)
Sets the IGMP/MLD query response time for the specified interface.
open_error_t openapiSnoopSSMMfdbCurrEntriesGet(openapiClientHandle_t *client_handle, uint8_t family, uint32_t *currEntries)
To get the current number of entries in the MFDB table.
open_error_t openapiSnoopVlanReportSuppModeSet(openapiClientHandle_t *client_handle, uint32_t vlanId, uint8_t family, OPEN_BOOL_t reportSuppMode)
Sets the configured IGMP/MLD snooping report suppression mode for the specified VLAN.
OPEN_BOOL_t
OPEN uses these enumerators to indicate true or false for a given config or status parameter...
open_error_t openapiSnoopIsValidIntf(openapiClientHandle_t *client_handle, uint32_t intIfNum, OPEN_BOOL_t *status)
Checks if interface is a valid IGMP/MLD snooping Interface.
open_error_t openapiSnoopVlanFastLeaveModeSet(openapiClientHandle_t *client_handle, uint32_t vlanId, OPEN_BOOL_t fastLeaveMode, uint8_t family)
Sets the configured IGMP/MLD snooping fast leave mode for the specified VLAN.
open_error_t openapiSnoopVlanMaximumResponseTimeGet(openapiClientHandle_t *client_handle, uint32_t vlanId, uint16_t *responseTime, uint8_t family)
Gets the configured IGMP/MLD snooping maximum response time for the specified VLAN.
open_error_t openapiSnoopIntfFastLeaveAdminModeGet(openapiClientHandle_t *client_handle, uint32_t intIfNum, OPEN_CONTROL_t *mode, uint8_t family)
Returns the Fast-Leave Admin mode for the specified interface.
open_error_t openapiSnoopQuerierAddressGet(openapiClientHandle_t *client_handle, open_inet_addr_t *snoopQuerierAddr, uint8_t family)
Gets the snooping querier configured address of a snoop instance.
Non-SSM Filter Mode State.
open_error_t openapiSnoopIntfGroupMembershipIntervalSet(openapiClientHandle_t *client_handle, uint32_t intIfNum, uint32_t queryTime, uint8_t family)
Sets the IGMP/MLD group membership interval for the specified interface.
open_error_t openapiSnoopAutoVideoModeSet(openapiClientHandle_t *client_handle, OPEN_CONTROL_t mode)
Sets the Auto-Video mode.
open_error_t openapiSnoopSSMSrcListEntryGet(openapiClientHandle_t *client_handle, uint8_t family, open_inet_addr_t *pGroup, uint32_t *pIntIfNum, uint32_t *pVlanId, open_inet_addr_t *pSrcIp)
To validate if the specified source address exists for the specified group address and interface or n...
open_error_t openapiSnoopQuerierVersionGet(openapiClientHandle_t *client_handle, uint32_t *version, uint8_t family)
Gets the snooping querier configured version of a snoop instance.
open_error_t openapiSnoopControlFramesProcessedGet(openapiClientHandle_t *client_handle, uint32_t *processedFrames, uint8_t family)
Returns the number of multicast control frames processed by the CPU.
open_error_t openapiSnoopSSMSrcListEntryNextGet(openapiClientHandle_t *client_handle, uint8_t family, open_inet_addr_t *pGroup, uint32_t *pIntIfNum, uint32_t *pVlanId, open_inet_addr_t *pSrcIp)
Get the next source list entry for the specified group address interface and source address...
open_error_t openapiSnoopAdminModeGet(openapiClientHandle_t *client_handle, OPEN_CONTROL_t *adminMode, uint8_t family)
Returns the IGMP/MLD Snooping Admin mode.
open_error_t openapiSnoopQuerierOperMaxRespTimeGet(openapiClientHandle_t *client_handle, uint32_t vlanId, uint32_t *maxRespTime, uint8_t family)
Gets the operational value of max response time for specified VLAN ID of a snoop instance.
open_error_t openapiSnoopIntfModeGet(openapiClientHandle_t *client_handle, uint32_t intIfNum, OPEN_CONTROL_t *mode, uint8_t family)
Returns the IGMP/MLD Snooping mode for the specified interface.
open_error_t openapiSnoopSSMGroupRecordNextGet(openapiClientHandle_t *client_handle, uint8_t family, open_inet_addr_t *pGroup, uint32_t *pIntIfNum, uint32_t *pVlanId)
Gets the next learnt entry from SSM group database.
open_error_t openapiSnoopQuerierVlanElectionModeGet(openapiClientHandle_t *client_handle, uint32_t vlanId, uint32_t *vlanMode, uint8_t family)
Gets the configured snooping querier election mode for the specified vlan ID of a snoop instance...
open_error_t openapiSnoopIntfEnabledMaskGet(openapiClientHandle_t *client_handle, open_buffdesc *mask, uint8_t family)
Returns the interface mask of interfaces enabled for IGMP/MLD Snooping.
open_error_t openapiSnoopSSMMfdbMostEntriesGet(openapiClientHandle_t *client_handle, uint8_t family, uint32_t *mostEntries)
To get the most number of entries ever in the SSM MFDB table for a given family.
open_error_t openapiSnoopIntfProxyQuerierModeGet(openapiClientHandle_t *client_handle, uint32_t intIfNum, OPEN_CONTROL_t *mode, uint8_t family)
Returns the Proxy Querier Admin mode for the specified interface.
open_error_t openapiSnoopQuerierQueryIntervalGet(openapiClientHandle_t *client_handle, uint32_t *queryInterval, uint8_t family)
Gets the snooping querier query interval of a snoop instance.
open_error_t openapiSnoopVlanGroupMembershipIntervalGet(openapiClientHandle_t *client_handle, uint32_t vlanId, uint16_t *groupMembershipInterval, uint8_t family)
Gets the configured IGMP/MLD snooping group membership interval for the specified VLAN...
open_error_t openapiSnoopIntfGroupMembershipIntervalGet(openapiClientHandle_t *client_handle, uint32_t intIfNum, uint32_t *queryTime, uint8_t family)
Returns the IGMP/MLD group membership interval for the specified interface.
open_error_t openapiSnoopVlanProxyQuerierModeGet(openapiClientHandle_t *client_handle, uint32_t vlanId, uint32_t *mode, uint8_t family)
Gets the configured snooping proxy querier mode for the specified VLAN of a snoop instance...
open_error_t openapiSnoopSSMMfdbMaxTableEntriesGet(openapiClientHandle_t *client_handle, uint8_t family, uint32_t *maxEntries)
To get the maximum number of entries that the SSM MFDB table can hold for a given family...
open_error_t openapiSnoopFloodUnknownAllPortsSet(openapiClientHandle_t *client_handle, OPEN_BOOL_t floodAll)
Sets the configured mode for flooding unknown multicast traffic to all ports.
OPEN_SNOOP_SSM_FILTER_MODE_t
open_error_t openapiSnoopQuerierVlanAddressGet(openapiClientHandle_t *client_handle, uint32_t vlanId, open_inet_addr_t *snoopQuerierAddr, uint8_t family)
Gets the qnooping querier configured address for specified VLAN ID of a snoop instance.
open_error_t openapiSnoopSSMMfdbEntryNextGet(openapiClientHandle_t *client_handle, uint8_t family, open_inet_addr_t *pGroup, open_inet_addr_t *pSource, uint32_t *pVlanId)
Gets next learnt entry from SSM MFDB.