38 #ifndef OPENAPI_LAG_H_INCLUDED
39 #define OPENAPI_LAG_H_INCLUDED
67 #define OPEN_MAX_MEMBERS_PER_LAG 32
68 #define OPEN_LAG_MEMBER_BUFFER_SIZE (sizeof(uint32_t) * OPEN_MAX_MEMBERS_PER_LAG)
70 #define OPEN_LAG_PORT_ACTOR_SYSTEM_PRIORITY_MIN 0
71 #define OPEN_LAG_PORT_ACTOR_SYSTEM_PRIORITY_DEFAULT 32768
72 #define OPEN_LAG_PORT_ACTOR_SYSTEM_PRIORITY_MAX 65535
74 #define OPEN_LAG_PORT_ACTOR_PORT_PRIORITY_MIN 0
75 #define OPEN_LAG_PORT_ACTOR_PORT_PRIORITY_DEFAULT 128
76 #define OPEN_LAG_PORT_ACTOR_PORT_PRIORITY_MAX 65535
84 OPEN_LAG_NON_UNICAST_HASH_MODE_OPTIONS_TOTAL
90 maskValue_t modesConfigured[
OPEN_MASK_LEN(OPEN_LAG_NON_UNICAST_HASH_MODE_OPTIONS_TOTAL)];
287 uint32_t *minThreshold,
288 uint32_t *maxThreshold);
308 uint32_t *minUpLinks);
331 uint32_t minUpLinks);
348 uint32_t *memberMax);
706 uint32_t lagIntIfNum,
727 uint32_t lagIntIfNum,
746 uint32_t ifNum, uint32_t *val);
764 uint32_t ifNum, uint32_t val);
815 uint32_t ifNum, uint32_t *val);
832 uint32_t ifNum, uint32_t val);
866 uint32_t *intfIndex);
888 uint32_t *nextIntfIndex);
910 uint32_t *portChannelId);
open_error_t openapiLagPortChannelIdGet(openapiClientHandle_t *client_handle, uint32_t ifNum, uint32_t *portChannelId)
Get the port channel ID for a given interface number.
open_error_t openapiLagIfIndexGetNext(openapiClientHandle_t *client_handle, uint32_t intfIndex, uint32_t *nextIntfIndex)
Get the interface index number of the next successive LAG interface.
open_error_t openapiLagAutoLAGAvbProfileModeGet(openapiClientHandle_t *client_handle, OPEN_CONTROL_t *adminMode)
Get the Auto-LAG global AVB profile mode.
open_error_t openapiLagIfIndexGetFirst(openapiClientHandle_t *client_handle, uint32_t *intfIndex)
Get the interface index number of the first LAG interface.
open_error_t openapiLagNameGet(openapiClientHandle_t *client_handle, uint32_t lagIfNum, open_buffdesc *name)
Gets name of the LAG interface.
open_error_t openapiDot3adAggPortLacpModeGet(openapiClientHandle_t *client_handle, uint32_t ifNum, OPEN_CONTROL_t *lacpMode)
Gets the LACP mode of the physical interface.
open_error_t openapiLagLoadBalanceModeSet(openapiClientHandle_t *client_handle, uint32_t lagIfNum, OPEN_LAG_HASH_MODE_t lbMode)
Sets load balancing mode of the LAG interface.
#define OPEN_MASK_LEN(_size)
SETMASKBIT turns on bit index # k in mask j.
open_error_t openapiLagNameMaxLengthGet(openapiClientHandle_t *client_handle, uint32_t *maxLen)
Get the maximum LAG name length.
open_error_t openapiLagActiveMembersListGet(openapiClientHandle_t *client_handle, uint32_t lagIfNum, uint32_t *count, open_buffdesc *bufd)
Gets a comma-delimited list of active member ports for the LAG interface.
OPEN_LAG_HASH_MODE_t
Hash Mode names.
open_error_t openapiLagThresholdMinMaxGet(openapiClientHandle_t *client_handle, uint32_t *minThreshold, uint32_t *maxThreshold)
Get the LAG Threshold minimum and maximum values.
open_error_t openapiDot3adAggPortActorAdminStateSet(openapiClientHandle_t *client_handle, uint32_t ifNum, OPEN_DOT3AD_STATE_TYPE_t type, OPEN_CONTROL_t mode)
Sets the LACP actor admin state.
open_error_t openapiLagAvbProfileModeGet(openapiClientHandle_t *client_handle, uint32_t lagIntIfNum, OPEN_CONTROL_t *adminMode)
Get the AVB profile mode of the LAG interface.
OPEN_LAG_NON_UNICAST_HASH_MODE_OPTIONS_t
open_error_t
OPEN uses these enumerators to indicate the error codes.
Src IP and Src TCP/UDP Port fields.
open_error_t openapiLagNonUnicastGlobalHashModeGet(openapiClientHandle_t *client_handle, openLagNonUnicastHashMode_t *hashMode)
Set global non unicast hash mode for a LAG system.
open_error_t openapiLagStaticModeGet(openapiClientHandle_t *client_handle, uint32_t lagIfNum, OPEN_CONTROL_t *staticMode)
Gets static mode of the LAG interface.
open_error_t openapiLagAdminModeSet(openapiClientHandle_t *client_handle, uint32_t lagIfNum, OPEN_CONTROL_t adminMode)
Set the administrative mode of a LAG interface.
open_error_t openapiLagMinUplinksSet(openapiClientHandle_t *client_handle, uint32_t lagIfNum, uint32_t minUpLinks)
Sets minimum uplinks for the LAG interface.
OPEN_DOT3AD_STATE_TYPE_t
OpEN uses these enumerations to indicate DOT3AD state types.
open_error_t openapiLagAggPortActorPortPrioritySet(openapiClientHandle_t *client_handle, uint32_t ifNum, uint32_t val)
Set the priority of this aggregation port.
open_error_t openapiLagMembersGet(openapiClientHandle_t *client_handle, uint32_t lagIfNum, uint32_t *count, open_buffdesc *bufd)
Gets the list of member ports for the LAG interface.
open_error_t openapiLagAutoLAGModeGet(openapiClientHandle_t *client_handle, OPEN_CONTROL_t *adminMode)
Get the Auto-LAG administrative mode.
open_error_t openapiLagLoadBalanceModeGet(openapiClientHandle_t *client_handle, uint32_t lagIfNum, OPEN_LAG_HASH_MODE_t *lbMode)
Gets load balancing mode of the LAG interface.
open_error_t openapiLagMembersListGet(openapiClientHandle_t *client_handle, uint32_t lagIfNum, uint32_t *count, open_buffdesc *bufd)
Gets a comma-delimited list of member ports for the LAG interface.
open_error_t openapiLagAggPortActorSystemPriorityGet(openapiClientHandle_t *client_handle, uint32_t *val)
Get the priority value associated with the system actor's ID.
Dest MAC, VLAN, EType, incoming port.
open_error_t openapiLagNameSet(openapiClientHandle_t *client_handle, uint32_t lagIfNum, open_buffdesc *name)
Sets name of the LAG interface.
Dest IP and Dest TCP/UDP Port fields.
open_error_t openapiLagAutoLAGHashModeGet(openapiClientHandle_t *client_handle, OPEN_LAG_HASH_MODE_t *hashMode)
Get the Auto-LAG global hash mode.
open_error_t openapiLagNonUnicastGlobalHashModeSet(openapiClientHandle_t *client_handle, openLagNonUnicastHashMode_t hashMode)
Set global non unicast hash mode for a LAG system.
open_error_t openapiLagCountGet(openapiClientHandle_t *client_handle, uint32_t *lagCount)
Get the current number of LAGs in the system (static and dynamic).
open_error_t openapiLagAutoLAGHashModeSet(openapiClientHandle_t *client_handle, OPEN_LAG_HASH_MODE_t hashMode)
Set the Auto-LAG global hash mode.
open_error_t openapiLagLinkTrapGet(openapiClientHandle_t *client_handle, uint32_t ifNum, uint32_t *val)
Get the link trap mode of a configured LAG.
Src/Dest MAC, VLAN, EType, incoming port.
open_error_t openapiLagAdminModeGet(openapiClientHandle_t *client_handle, uint32_t lagIfNum, OPEN_CONTROL_t *adminMode)
Get the administrative mode of a LAG interface.
open_error_t openapiLagMaxMemberCountGet(openapiClientHandle_t *client_handle, uint32_t *memberMax)
Get the maximum number of members allowed for a LAG.
OPEN_CONTROL_t
OPEN uses these enumerators to indicate enable or disable for a given config or status parameter...
OPEN_BOOL_t
OPEN uses these enumerators to indicate true or false for a given config or status parameter...
open_error_t openapiLagPortDelete(openapiClientHandle_t *client_handle, uint32_t lagIfNum, uint32_t phyIfNum)
Delete a physical interface from a LAG interface.
open_error_t openapiDot3adAggPortLacpModeSet(openapiClientHandle_t *client_handle, uint32_t ifNum, OPEN_CONTROL_t lacpMode)
Sets the LACP mode of the physical interface.
open_error_t openapiDot3adAggPortActorAdminStateGet(openapiClientHandle_t *client_handle, uint32_t ifNum, OPEN_DOT3AD_STATE_TYPE_t type, OPEN_CONTROL_t *state)
Gets the LACP actor admin state.
open_error_t openapiLagAutoLAGStatusGet(openapiClientHandle_t *client_handle, uint32_t lagIntIfNum, OPEN_BOOL_t *autoLagStatus)
Get the Auto-LAG status of the LAG interface.
open_error_t openapiLagAutoLAGAvbProfileModeSet(openapiClientHandle_t *client_handle, OPEN_CONTROL_t adminMode)
Set the Auto-LAG global AVB profile mode.
open_error_t openapiLagPortAdd(openapiClientHandle_t *client_handle, uint32_t lagIfNum, uint32_t phyIfNum)
Adds a physical interface to a LAG interface.
open_error_t openapiLagAggPortActorPortPriorityGet(openapiClientHandle_t *client_handle, uint32_t ifNum, uint32_t *val)
Get the priority assigned to this aggregation port.
open_error_t openapiLagActiveMembersGet(openapiClientHandle_t *client_handle, uint32_t lagIfNum, uint32_t *count, open_buffdesc *bufd)
Gets the list of active member ports for the LAG interface.
open_error_t openapiLagMinUplinksGet(openapiClientHandle_t *client_handle, uint32_t lagIfNum, uint32_t *minUpLinks)
Gets minimum uplinks for the LAG interface.
Src/Dest IP and TCP/UDP Port fields.
open_error_t openapiLagLinkTrapSet(openapiClientHandle_t *client_handle, uint32_t ifNum, uint32_t val)
Set the link trap mode of a configured LAG.
open_error_t openapiLagAggPortActorSystemPrioritySet(openapiClientHandle_t *client_handle, uint32_t val)
Set the priority value associated with the system actor's ID.
open_error_t openapiLagAutoLAGModeSet(openapiClientHandle_t *client_handle, OPEN_CONTROL_t adminMode)
Set the Auto-LAG administrative mode.
open_error_t openapiLagStaticModeSet(openapiClientHandle_t *client_handle, uint32_t lagIfNum, OPEN_CONTROL_t staticMode)
Sets static mode of the LAG interface.
Src MAC, VLAN, EType, incoming port.