SAI Metadata
Loading...
Searching...
No Matches
SAI - Extension specific API definitions

Classes

struct  _sai_dash_acl_api_t
 

Typedefs

typedef enum _sai_dash_acl_rule_action_t sai_dash_acl_rule_action_t
 Attribute data for SAI_DASH_ACL_RULE_ATTR_ACTION.
 
typedef enum _sai_dash_acl_group_attr_t sai_dash_acl_group_attr_t
 Attribute ID for dash_acl_dash_acl_group.
 
typedef enum _sai_dash_acl_rule_attr_t sai_dash_acl_rule_attr_t
 Attribute ID for dash_acl_dash_acl_rule.
 
typedef sai_status_t(* sai_create_dash_acl_group_fn) (_Out_ sai_object_id_t *dash_acl_group_id, _In_ sai_object_id_t switch_id, _In_ uint32_t attr_count, _In_ const sai_attribute_t *attr_list)
 Create dash_acl_dash_acl_group.
 
typedef sai_status_t(* sai_remove_dash_acl_group_fn) (_In_ sai_object_id_t dash_acl_group_id)
 Remove dash_acl_dash_acl_group.
 
typedef sai_status_t(* sai_set_dash_acl_group_attribute_fn) (_In_ sai_object_id_t dash_acl_group_id, _In_ const sai_attribute_t *attr)
 Set attribute for dash_acl_dash_acl_group.
 
typedef sai_status_t(* sai_get_dash_acl_group_attribute_fn) (_In_ sai_object_id_t dash_acl_group_id, _In_ uint32_t attr_count, _Inout_ sai_attribute_t *attr_list)
 Get attribute for dash_acl_dash_acl_group.
 
typedef sai_status_t(* sai_create_dash_acl_rule_fn) (_Out_ sai_object_id_t *dash_acl_rule_id, _In_ sai_object_id_t switch_id, _In_ uint32_t attr_count, _In_ const sai_attribute_t *attr_list)
 Create dash_acl_dash_acl_rule.
 
typedef sai_status_t(* sai_remove_dash_acl_rule_fn) (_In_ sai_object_id_t dash_acl_rule_id)
 Remove dash_acl_dash_acl_rule.
 
typedef sai_status_t(* sai_set_dash_acl_rule_attribute_fn) (_In_ sai_object_id_t dash_acl_rule_id, _In_ const sai_attribute_t *attr)
 Set attribute for dash_acl_dash_acl_rule.
 
typedef sai_status_t(* sai_get_dash_acl_rule_attribute_fn) (_In_ sai_object_id_t dash_acl_rule_id, _In_ uint32_t attr_count, _Inout_ sai_attribute_t *attr_list)
 Get attribute for dash_acl_dash_acl_rule.
 
typedef struct _sai_dash_acl_api_t sai_dash_acl_api_t
 

Enumerations

enum  _sai_dash_acl_rule_action_t { SAI_DASH_ACL_RULE_ACTION_PERMIT , SAI_DASH_ACL_RULE_ACTION_PERMIT_AND_CONTINUE , SAI_DASH_ACL_RULE_ACTION_DENY , SAI_DASH_ACL_RULE_ACTION_DENY_AND_CONTINUE }
 Attribute data for SAI_DASH_ACL_RULE_ATTR_ACTION. More...
 
enum  _sai_dash_acl_group_attr_t {
  SAI_DASH_ACL_GROUP_ATTR_START , SAI_DASH_ACL_GROUP_ATTR_IP_ADDR_FAMILY = SAI_DASH_ACL_GROUP_ATTR_START , SAI_DASH_ACL_GROUP_ATTR_END , SAI_DASH_ACL_GROUP_ATTR_CUSTOM_RANGE_START = 0x10000000 ,
  SAI_DASH_ACL_GROUP_ATTR_CUSTOM_RANGE_END
}
 Attribute ID for dash_acl_dash_acl_group. More...
 
enum  _sai_dash_acl_rule_attr_t {
  SAI_DASH_ACL_RULE_ATTR_START , SAI_DASH_ACL_RULE_ATTR_ACTION = SAI_DASH_ACL_RULE_ATTR_START , SAI_DASH_ACL_RULE_ATTR_DASH_ACL_GROUP_ID , SAI_DASH_ACL_RULE_ATTR_DIP ,
  SAI_DASH_ACL_RULE_ATTR_SIP , SAI_DASH_ACL_RULE_ATTR_PROTOCOL , SAI_DASH_ACL_RULE_ATTR_SRC_PORT , SAI_DASH_ACL_RULE_ATTR_DST_PORT ,
  SAI_DASH_ACL_RULE_ATTR_COUNTER_ID , SAI_DASH_ACL_RULE_ATTR_PRIORITY , SAI_DASH_ACL_RULE_ATTR_IP_ADDR_FAMILY , SAI_DASH_ACL_RULE_ATTR_END ,
  SAI_DASH_ACL_RULE_ATTR_CUSTOM_RANGE_START = 0x10000000 , SAI_DASH_ACL_RULE_ATTR_CUSTOM_RANGE_END
}
 Attribute ID for dash_acl_dash_acl_rule. More...
 

Detailed Description

Typedef Documentation

◆ sai_create_dash_acl_group_fn

typedef sai_status_t(* sai_create_dash_acl_group_fn) (_Out_ sai_object_id_t *dash_acl_group_id, _In_ sai_object_id_t switch_id, _In_ uint32_t attr_count, _In_ const sai_attribute_t *attr_list)

Create dash_acl_dash_acl_group.

Parameters
[out]dash_acl_group_idEntry 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 206 of file saiexperimentaldashacl.h.

◆ sai_create_dash_acl_rule_fn

typedef sai_status_t(* sai_create_dash_acl_rule_fn) (_Out_ sai_object_id_t *dash_acl_rule_id, _In_ sai_object_id_t switch_id, _In_ uint32_t attr_count, _In_ const sai_attribute_t *attr_list)

Create dash_acl_dash_acl_rule.

Parameters
[out]dash_acl_rule_idEntry 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 258 of file saiexperimentaldashacl.h.

◆ sai_get_dash_acl_group_attribute_fn

typedef sai_status_t(* sai_get_dash_acl_group_attribute_fn) (_In_ sai_object_id_t dash_acl_group_id, _In_ uint32_t attr_count, _Inout_ sai_attribute_t *attr_list)

Get attribute for dash_acl_dash_acl_group.

Parameters
[in]dash_acl_group_idEntry 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 243 of file saiexperimentaldashacl.h.

◆ sai_get_dash_acl_rule_attribute_fn

typedef sai_status_t(* sai_get_dash_acl_rule_attribute_fn) (_In_ sai_object_id_t dash_acl_rule_id, _In_ uint32_t attr_count, _Inout_ sai_attribute_t *attr_list)

Get attribute for dash_acl_dash_acl_rule.

Parameters
[in]dash_acl_rule_idEntry 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 295 of file saiexperimentaldashacl.h.

◆ sai_remove_dash_acl_group_fn

typedef sai_status_t(* sai_remove_dash_acl_group_fn) (_In_ sai_object_id_t dash_acl_group_id)

Remove dash_acl_dash_acl_group.

Parameters
[in]dash_acl_group_idEntry id
Returns
SAI_STATUS_SUCCESS on success Failure status code on error

Definition at line 219 of file saiexperimentaldashacl.h.

◆ sai_remove_dash_acl_rule_fn

typedef sai_status_t(* sai_remove_dash_acl_rule_fn) (_In_ sai_object_id_t dash_acl_rule_id)

Remove dash_acl_dash_acl_rule.

Parameters
[in]dash_acl_rule_idEntry id
Returns
SAI_STATUS_SUCCESS on success Failure status code on error

Definition at line 271 of file saiexperimentaldashacl.h.

◆ sai_set_dash_acl_group_attribute_fn

typedef sai_status_t(* sai_set_dash_acl_group_attribute_fn) (_In_ sai_object_id_t dash_acl_group_id, _In_ const sai_attribute_t *attr)

Set attribute for dash_acl_dash_acl_group.

Parameters
[in]dash_acl_group_idEntry id
[in]attrAttribute
Returns
SAI_STATUS_SUCCESS on success Failure status code on error

Definition at line 230 of file saiexperimentaldashacl.h.

◆ sai_set_dash_acl_rule_attribute_fn

typedef sai_status_t(* sai_set_dash_acl_rule_attribute_fn) (_In_ sai_object_id_t dash_acl_rule_id, _In_ const sai_attribute_t *attr)

Set attribute for dash_acl_dash_acl_rule.

Parameters
[in]dash_acl_rule_idEntry id
[in]attrAttribute
Returns
SAI_STATUS_SUCCESS on success Failure status code on error

Definition at line 282 of file saiexperimentaldashacl.h.

Enumeration Type Documentation

◆ _sai_dash_acl_group_attr_t

Attribute ID for dash_acl_dash_acl_group.

Enumerator
SAI_DASH_ACL_GROUP_ATTR_START 

Start of attributes.

SAI_DASH_ACL_GROUP_ATTR_IP_ADDR_FAMILY 

Action set_acl_group_attrs parameter IP_ADDR_FAMILY.

Value Type:
sai_ip_addr_family_t
Flags:
CREATE_AND_SET
Default value:
SAI_IP_ADDR_FAMILY_IPV4
IsResourceType:
true
SAI_DASH_ACL_GROUP_ATTR_END 

End of attributes.

SAI_DASH_ACL_GROUP_ATTR_CUSTOM_RANGE_START 

Custom range base value

SAI_DASH_ACL_GROUP_ATTR_CUSTOM_RANGE_END 

End of custom range base

Definition at line 54 of file saiexperimentaldashacl.h.

◆ _sai_dash_acl_rule_action_t

Attribute data for SAI_DASH_ACL_RULE_ATTR_ACTION.

Definition at line 39 of file saiexperimentaldashacl.h.

◆ _sai_dash_acl_rule_attr_t

Attribute ID for dash_acl_dash_acl_rule.

Enumerator
SAI_DASH_ACL_RULE_ATTR_START 

Start of attributes.

SAI_DASH_ACL_RULE_ATTR_ACTION 

Action.

Value Type:
sai_dash_acl_rule_action_t
Flags:
CREATE_AND_SET
Default value:
SAI_DASH_ACL_RULE_ACTION_PERMIT
SAI_DASH_ACL_RULE_ATTR_DASH_ACL_GROUP_ID 

Exact matched key dash_acl_group_id.

Value Type:
sai_object_id_t
Flags:
MANDATORY_ON_CREATE | CREATE_ONLY
Allowed object types
SAI_OBJECT_TYPE_DASH_ACL_GROUP
IsResourceType:
true
SAI_DASH_ACL_RULE_ATTR_DIP 

List matched key dip.

Value Type:
sai_ip_prefix_list_t
Flags:
MANDATORY_ON_CREATE | CREATE_ONLY
SAI_DASH_ACL_RULE_ATTR_SIP 

List matched key sip.

Value Type:
sai_ip_prefix_list_t
Flags:
MANDATORY_ON_CREATE | CREATE_ONLY
SAI_DASH_ACL_RULE_ATTR_PROTOCOL 

List matched key protocol.

Value Type:
sai_u8_list_t
Flags:
MANDATORY_ON_CREATE | CREATE_ONLY
SAI_DASH_ACL_RULE_ATTR_SRC_PORT 

Range_list matched key src_port.

Value Type:
sai_u16_range_list_t
Flags:
MANDATORY_ON_CREATE | CREATE_ONLY
SAI_DASH_ACL_RULE_ATTR_DST_PORT 

Range_list matched key dst_port.

Value Type:
sai_u16_range_list_t
Flags:
MANDATORY_ON_CREATE | CREATE_ONLY
SAI_DASH_ACL_RULE_ATTR_COUNTER_ID 

Attach a counter.

When it is empty, then packet hits won't be counted

Value Type:
sai_object_id_t
Flags:
CREATE_AND_SET
Allowed object types
SAI_OBJECT_TYPE_COUNTER
Allows NULL object ID
true
Default value:
SAI_NULL_OBJECT_ID
SAI_DASH_ACL_RULE_ATTR_PRIORITY 

Rule priority in table.

Value Type:
sai_uint32_t
Flags:
MANDATORY_ON_CREATE | CREATE_ONLY
SAI_DASH_ACL_RULE_ATTR_IP_ADDR_FAMILY 

IP address family for resource accounting.

Value Type:
sai_ip_addr_family_t
Flags:
READ_ONLY
IsResourceType:
true
SAI_DASH_ACL_RULE_ATTR_END 

End of attributes.

SAI_DASH_ACL_RULE_ATTR_CUSTOM_RANGE_START 

Custom range base value

SAI_DASH_ACL_RULE_ATTR_CUSTOM_RANGE_END 

End of custom range base

Definition at line 87 of file saiexperimentaldashacl.h.