SAI Metadata
Loading...
Searching...
No Matches
SAI - L2MC group specific API definitions

Classes

struct  _sai_l2mc_group_api_t
 L2MC group methods table retrieved with sai_api_query() More...
 

Typedefs

typedef enum _sai_l2mc_group_attr_t sai_l2mc_group_attr_t
 Attributes for L2MC group.
 
typedef enum _sai_l2mc_group_member_attr_t sai_l2mc_group_member_attr_t
 
typedef sai_status_t(* sai_create_l2mc_group_fn) (_Out_ sai_object_id_t *l2mc_group_id, _In_ sai_object_id_t switch_id, _In_ uint32_t attr_count, _In_ const sai_attribute_t *attr_list)
 Create L2MC group.
 
typedef sai_status_t(* sai_remove_l2mc_group_fn) (_In_ sai_object_id_t l2mc_group_id)
 Remove L2MC group.
 
typedef sai_status_t(* sai_set_l2mc_group_attribute_fn) (_In_ sai_object_id_t l2mc_group_id, _In_ const sai_attribute_t *attr)
 Set L2MC Group attribute.
 
typedef sai_status_t(* sai_get_l2mc_group_attribute_fn) (_In_ sai_object_id_t l2mc_group_id, _In_ uint32_t attr_count, _Inout_ sai_attribute_t *attr_list)
 Get L2MC Group attribute.
 
typedef sai_status_t(* sai_create_l2mc_group_member_fn) (_Out_ sai_object_id_t *l2mc_group_member_id, _In_ sai_object_id_t switch_id, _In_ uint32_t attr_count, _In_ const sai_attribute_t *attr_list)
 Create L2MC group member.
 
typedef sai_status_t(* sai_remove_l2mc_group_member_fn) (_In_ sai_object_id_t l2mc_group_member_id)
 Remove L2MC group member.
 
typedef sai_status_t(* sai_set_l2mc_group_member_attribute_fn) (_In_ sai_object_id_t l2mc_group_member_id, _In_ const sai_attribute_t *attr)
 Set L2MC Group attribute.
 
typedef sai_status_t(* sai_get_l2mc_group_member_attribute_fn) (_In_ sai_object_id_t l2mc_group_member_id, _In_ uint32_t attr_count, _Inout_ sai_attribute_t *attr_list)
 Get L2MC Group attribute.
 
typedef struct _sai_l2mc_group_api_t sai_l2mc_group_api_t
 L2MC group methods table retrieved with sai_api_query()
 

Enumerations

enum  _sai_l2mc_group_attr_t {
  SAI_L2MC_GROUP_ATTR_START , SAI_L2MC_GROUP_ATTR_L2MC_OUTPUT_COUNT = SAI_L2MC_GROUP_ATTR_START , SAI_L2MC_GROUP_ATTR_L2MC_MEMBER_LIST , SAI_L2MC_GROUP_ATTR_END ,
  SAI_L2MC_GROUP_ATTR_CUSTOM_RANGE_START = 0x10000000 , SAI_L2MC_GROUP_ATTR_CUSTOM_RANGE_END
}
 Attributes for L2MC group. More...
 
enum  _sai_l2mc_group_member_attr_t {
  SAI_L2MC_GROUP_MEMBER_ATTR_START , SAI_L2MC_GROUP_MEMBER_ATTR_L2MC_GROUP_ID = SAI_L2MC_GROUP_MEMBER_ATTR_START , SAI_L2MC_GROUP_MEMBER_ATTR_L2MC_OUTPUT_ID , SAI_L2MC_GROUP_MEMBER_ATTR_L2MC_ENDPOINT_IP ,
  SAI_L2MC_GROUP_MEMBER_ATTR_END , SAI_L2MC_GROUP_MEMBER_ATTR_CUSTOM_RANGE_START = 0x10000000 , SAI_L2MC_GROUP_MEMBER_ATTR_CUSTOM_RANGE_END
}
 

Detailed Description

Typedef Documentation

◆ sai_create_l2mc_group_fn

typedef sai_status_t(* sai_create_l2mc_group_fn) (_Out_ sai_object_id_t *l2mc_group_id, _In_ sai_object_id_t switch_id, _In_ uint32_t attr_count, _In_ const sai_attribute_t *attr_list)

Create L2MC group.

Parameters
[out]l2mc_group_idL2MC group id
[in]switch_idSwitch id
[in]attr_countNumber of attributes
[in]attr_listArray of attributes
Returns
SAI_STATUS_SUCCESS on success, failure status code on error

Definition at line 134 of file sail2mcgroup.h.

◆ sai_create_l2mc_group_member_fn

typedef sai_status_t(* sai_create_l2mc_group_member_fn) (_Out_ sai_object_id_t *l2mc_group_member_id, _In_ sai_object_id_t switch_id, _In_ uint32_t attr_count, _In_ const sai_attribute_t *attr_list)

Create L2MC group member.

Parameters
[out]l2mc_group_member_idL2MC group member id
[in]switch_idSwitch ID
[in]attr_countNumber of attributes
[in]attr_listArray of attributes
Returns
SAI_STATUS_SUCCESS on success, failure status code on error

Definition at line 186 of file sail2mcgroup.h.

◆ sai_get_l2mc_group_attribute_fn

typedef sai_status_t(* sai_get_l2mc_group_attribute_fn) (_In_ sai_object_id_t l2mc_group_id, _In_ uint32_t attr_count, _Inout_ sai_attribute_t *attr_list)

Get L2MC Group attribute.

Parameters
[in]l2mc_group_idL2MC group id
[in]attr_countNumber of attributes
[in,out]attr_listArray of attributes
Returns
SAI_STATUS_SUCCESS on success, failure status code on error

Definition at line 171 of file sail2mcgroup.h.

◆ sai_get_l2mc_group_member_attribute_fn

typedef sai_status_t(* sai_get_l2mc_group_member_attribute_fn) (_In_ sai_object_id_t l2mc_group_member_id, _In_ uint32_t attr_count, _Inout_ sai_attribute_t *attr_list)

Get L2MC Group attribute.

Parameters
[in]l2mc_group_member_idL2MC group member id
[in]attr_countNumber of attributes
[in,out]attr_listArray of attributes
Returns
SAI_STATUS_SUCCESS on success, failure status code on error

Definition at line 223 of file sail2mcgroup.h.

◆ sai_remove_l2mc_group_fn

typedef sai_status_t(* sai_remove_l2mc_group_fn) (_In_ sai_object_id_t l2mc_group_id)

Remove L2MC group.

Parameters
[in]l2mc_group_idL2MC group id
Returns
SAI_STATUS_SUCCESS on success, failure status code on error

Definition at line 147 of file sail2mcgroup.h.

◆ sai_remove_l2mc_group_member_fn

typedef sai_status_t(* sai_remove_l2mc_group_member_fn) (_In_ sai_object_id_t l2mc_group_member_id)

Remove L2MC group member.

Parameters
[in]l2mc_group_member_idL2MC group member id
Returns
SAI_STATUS_SUCCESS on success, failure status code on error

Definition at line 199 of file sail2mcgroup.h.

◆ sai_set_l2mc_group_attribute_fn

typedef sai_status_t(* sai_set_l2mc_group_attribute_fn) (_In_ sai_object_id_t l2mc_group_id, _In_ const sai_attribute_t *attr)

Set L2MC Group attribute.

Parameters
[in]l2mc_group_idL2MC group id
[in]attrAttribute
Returns
SAI_STATUS_SUCCESS on success, failure status code on error

Definition at line 158 of file sail2mcgroup.h.

◆ sai_set_l2mc_group_member_attribute_fn

typedef sai_status_t(* sai_set_l2mc_group_member_attribute_fn) (_In_ sai_object_id_t l2mc_group_member_id, _In_ const sai_attribute_t *attr)

Set L2MC Group attribute.

Parameters
[in]l2mc_group_member_idL2MC group member id
[in]attrAttribute
Returns
SAI_STATUS_SUCCESS on success, failure status code on error

Definition at line 210 of file sail2mcgroup.h.

Enumeration Type Documentation

◆ _sai_l2mc_group_attr_t

Attributes for L2MC group.

Enumerator
SAI_L2MC_GROUP_ATTR_START 

Start of attributes.

SAI_L2MC_GROUP_ATTR_L2MC_OUTPUT_COUNT 

Number of L2MC output in the group.

Value Type:
sai_uint32_t
Flags:
READ_ONLY
SAI_L2MC_GROUP_ATTR_L2MC_MEMBER_LIST 

L2MC member list.

Value Type:
sai_object_list_t
Flags:
READ_ONLY
Allowed object types
SAI_OBJECT_TYPE_L2MC_GROUP_MEMBER
SAI_L2MC_GROUP_ATTR_END 

End of attributes.

SAI_L2MC_GROUP_ATTR_CUSTOM_RANGE_START 

Custom range base value

SAI_L2MC_GROUP_ATTR_CUSTOM_RANGE_END 

End of custom range base

Definition at line 39 of file sail2mcgroup.h.

◆ _sai_l2mc_group_member_attr_t

Enumerator
SAI_L2MC_GROUP_MEMBER_ATTR_START 

Start of attributes.

SAI_L2MC_GROUP_MEMBER_ATTR_L2MC_GROUP_ID 

L2MC group id.

Value Type:
sai_object_id_t
Flags:
MANDATORY_ON_CREATE | CREATE_ONLY
Allowed object types
SAI_OBJECT_TYPE_L2MC_GROUP
SAI_L2MC_GROUP_MEMBER_ATTR_L2MC_OUTPUT_ID 

L2MC output id.

Value Type:
sai_object_id_t
Flags:
MANDATORY_ON_CREATE | CREATE_ONLY
Allowed object types
SAI_OBJECT_TYPE_BRIDGE_PORT
SAI_L2MC_GROUP_MEMBER_ATTR_L2MC_ENDPOINT_IP 

L2MC Tunnel Endpoint IP.Valid and mandatory if bridge port is of type SAI_BRIDGE_PORT_TYPE_TUNNEL.

Value Type:
sai_ip_address_t
Flags:
CREATE_ONLY
Default value:
0.0.0.0
SAI_L2MC_GROUP_MEMBER_ATTR_END 

End of attributes.

SAI_L2MC_GROUP_MEMBER_ATTR_CUSTOM_RANGE_START 

Custom range base value

SAI_L2MC_GROUP_MEMBER_ATTR_CUSTOM_RANGE_END 

End of custom range base

Definition at line 76 of file sail2mcgroup.h.