SAI Metadata
Loading...
Searching...
No Matches
saiexperimentaldashacl.h
Go to the documentation of this file.
1
25#if !defined (__SAIEXPERIMENTALDASHACL_H_)
26#define __SAIEXPERIMENTALDASHACL_H_
27
28#include <saitypes.h>
29
40{
41 SAI_DASH_ACL_RULE_ACTION_PERMIT,
42
43 SAI_DASH_ACL_RULE_ACTION_PERMIT_AND_CONTINUE,
44
45 SAI_DASH_ACL_RULE_ACTION_DENY,
46
47 SAI_DASH_ACL_RULE_ACTION_DENY_AND_CONTINUE,
48
50
55{
60
70
75
78
81
83
88{
93
102
112
120
128
136
144
152
165
173
182
187
190
193
195
206typedef sai_status_t (*sai_create_dash_acl_group_fn)(
207 _Out_ sai_object_id_t *dash_acl_group_id,
208 _In_ sai_object_id_t switch_id,
209 _In_ uint32_t attr_count,
210 _In_ const sai_attribute_t *attr_list);
211
219typedef sai_status_t (*sai_remove_dash_acl_group_fn)(
220 _In_ sai_object_id_t dash_acl_group_id);
221
231 _In_ sai_object_id_t dash_acl_group_id,
232 _In_ const sai_attribute_t *attr);
233
244 _In_ sai_object_id_t dash_acl_group_id,
245 _In_ uint32_t attr_count,
246 _Inout_ sai_attribute_t *attr_list);
247
258typedef sai_status_t (*sai_create_dash_acl_rule_fn)(
259 _Out_ sai_object_id_t *dash_acl_rule_id,
260 _In_ sai_object_id_t switch_id,
261 _In_ uint32_t attr_count,
262 _In_ const sai_attribute_t *attr_list);
263
271typedef sai_status_t (*sai_remove_dash_acl_rule_fn)(
272 _In_ sai_object_id_t dash_acl_rule_id);
273
283 _In_ sai_object_id_t dash_acl_rule_id,
284 _In_ const sai_attribute_t *attr);
285
296 _In_ sai_object_id_t dash_acl_rule_id,
297 _In_ uint32_t attr_count,
298 _Inout_ sai_attribute_t *attr_list);
299
301{
302 sai_create_dash_acl_group_fn create_dash_acl_group;
303 sai_remove_dash_acl_group_fn remove_dash_acl_group;
304 sai_set_dash_acl_group_attribute_fn set_dash_acl_group_attribute;
305 sai_get_dash_acl_group_attribute_fn get_dash_acl_group_attribute;
306 sai_bulk_object_create_fn create_dash_acl_groups;
307 sai_bulk_object_remove_fn remove_dash_acl_groups;
308
309 sai_create_dash_acl_rule_fn create_dash_acl_rule;
310 sai_remove_dash_acl_rule_fn remove_dash_acl_rule;
311 sai_set_dash_acl_rule_attribute_fn set_dash_acl_rule_attribute;
312 sai_get_dash_acl_rule_attribute_fn get_dash_acl_rule_attribute;
313 sai_bulk_object_create_fn create_dash_acl_rules;
314 sai_bulk_object_remove_fn remove_dash_acl_rules;
315
317
321#endif
enum _sai_dash_acl_rule_attr_t sai_dash_acl_rule_attr_t
Attribute ID for dash_acl_dash_acl_rule.
_sai_dash_acl_group_attr_t
Attribute ID for dash_acl_dash_acl_group.
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.
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.
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.
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.
sai_status_t(* sai_remove_dash_acl_rule_fn)(_In_ sai_object_id_t dash_acl_rule_id)
Remove dash_acl_dash_acl_rule.
sai_status_t(* sai_remove_dash_acl_group_fn)(_In_ sai_object_id_t dash_acl_group_id)
Remove dash_acl_dash_acl_group.
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.
enum _sai_dash_acl_rule_action_t sai_dash_acl_rule_action_t
Attribute data for SAI_DASH_ACL_RULE_ATTR_ACTION.
enum _sai_dash_acl_group_attr_t sai_dash_acl_group_attr_t
Attribute ID for dash_acl_dash_acl_group.
_sai_dash_acl_rule_action_t
Attribute data for SAI_DASH_ACL_RULE_ATTR_ACTION.
_sai_dash_acl_rule_attr_t
Attribute ID for dash_acl_dash_acl_rule.
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.
@ SAI_DASH_ACL_GROUP_ATTR_START
Start of attributes.
@ SAI_DASH_ACL_GROUP_ATTR_CUSTOM_RANGE_START
@ SAI_DASH_ACL_GROUP_ATTR_CUSTOM_RANGE_END
@ SAI_DASH_ACL_GROUP_ATTR_IP_ADDR_FAMILY
Action set_acl_group_attrs parameter IP_ADDR_FAMILY.
@ SAI_DASH_ACL_GROUP_ATTR_END
End of attributes.
@ SAI_DASH_ACL_RULE_ATTR_SIP
List matched key sip.
@ SAI_DASH_ACL_RULE_ATTR_PROTOCOL
List matched key protocol.
@ SAI_DASH_ACL_RULE_ATTR_PRIORITY
Rule priority in table.
@ SAI_DASH_ACL_RULE_ATTR_START
Start of attributes.
@ SAI_DASH_ACL_RULE_ATTR_END
End of attributes.
@ SAI_DASH_ACL_RULE_ATTR_COUNTER_ID
Attach a counter.
@ SAI_DASH_ACL_RULE_ATTR_DIP
List matched key dip.
@ SAI_DASH_ACL_RULE_ATTR_DASH_ACL_GROUP_ID
Exact matched key dash_acl_group_id.
@ SAI_DASH_ACL_RULE_ATTR_CUSTOM_RANGE_END
@ SAI_DASH_ACL_RULE_ATTR_SRC_PORT
Range_list matched key src_port.
@ SAI_DASH_ACL_RULE_ATTR_DST_PORT
Range_list matched key dst_port.
@ SAI_DASH_ACL_RULE_ATTR_ACTION
Action.
@ SAI_DASH_ACL_RULE_ATTR_CUSTOM_RANGE_START
@ SAI_DASH_ACL_RULE_ATTR_IP_ADDR_FAMILY
IP address family for resource accounting.
sai_status_t(* sai_bulk_object_create_fn)(_In_ sai_object_id_t switch_id, _In_ uint32_t object_count, _In_ const uint32_t *attr_count, _In_ const sai_attribute_t **attr_list, _In_ sai_bulk_op_error_mode_t mode, _Out_ sai_object_id_t *object_id, _Out_ sai_status_t *object_statuses)
Bulk objects creation.
Definition saitypes.h:1577
sai_status_t(* sai_bulk_object_remove_fn)(_In_ uint32_t object_count, _In_ const sai_object_id_t *object_id, _In_ sai_bulk_op_error_mode_t mode, _Out_ sai_status_t *object_statuses)
Bulk objects removal.
Definition saitypes.h:1598
This module defines SAI portable types.