25#if !defined (__SAIROUTERINTERFACE_H_)
26#define __SAIROUTERINTERFACE_H_
352 _Out_ sai_object_id_t *router_interface_id,
353 _In_ sai_object_id_t switch_id,
354 _In_ uint32_t attr_count,
365 _In_ sai_object_id_t router_interface_id);
376 _In_ sai_object_id_t router_interface_id,
389 _In_ sai_object_id_t router_interface_id,
390 _In_ uint32_t attr_count,
404 _In_ sai_object_id_t router_interface_id,
405 _In_ uint32_t number_of_counters,
406 _In_
const sai_stat_id_t *counter_ids,
407 _Out_ uint64_t *counters);
421 _In_ sai_object_id_t router_interface_id,
422 _In_ uint32_t number_of_counters,
423 _In_
const sai_stat_id_t *counter_ids,
425 _Out_ uint64_t *counters);
437 _In_ sai_object_id_t router_interface_id,
438 _In_ uint32_t number_of_counters,
439 _In_
const sai_stat_id_t *counter_ids);
struct _sai_router_interface_api_t sai_router_interface_api_t
Routing interface methods table retrieved with sai_api_query()
sai_status_t(* sai_get_router_interface_stats_ext_fn)(_In_ sai_object_id_t router_interface_id, _In_ uint32_t number_of_counters, _In_ const sai_stat_id_t *counter_ids, _In_ sai_stats_mode_t mode, _Out_ uint64_t *counters)
Get router interface statistics counters extended.
_sai_router_interface_attr_t
Routing interface attribute IDs.
enum _sai_router_interface_type_t sai_router_interface_type_t
Attribute data for SAI_ROUTER_INTERFACE_ATTR_TYPE.
_sai_router_interface_type_t
Attribute data for SAI_ROUTER_INTERFACE_ATTR_TYPE.
sai_status_t(* sai_set_router_interface_attribute_fn)(_In_ sai_object_id_t router_interface_id, _In_ const sai_attribute_t *attr)
Set router interface attribute.
sai_status_t(* sai_clear_router_interface_stats_fn)(_In_ sai_object_id_t router_interface_id, _In_ uint32_t number_of_counters, _In_ const sai_stat_id_t *counter_ids)
Clear router interface statistics counters.
enum _sai_router_interface_stat_t sai_router_interface_stat_t
Router interface counter IDs in sai_get_router_interface_stats() call.
_sai_router_interface_stat_t
Router interface counter IDs in sai_get_router_interface_stats() call.
sai_status_t(* sai_create_router_interface_fn)(_Out_ sai_object_id_t *router_interface_id, _In_ sai_object_id_t switch_id, _In_ uint32_t attr_count, _In_ const sai_attribute_t *attr_list)
Create router interface.
sai_status_t(* sai_get_router_interface_attribute_fn)(_In_ sai_object_id_t router_interface_id, _In_ uint32_t attr_count, _Inout_ sai_attribute_t *attr_list)
Get router interface attribute.
sai_status_t(* sai_get_router_interface_stats_fn)(_In_ sai_object_id_t router_interface_id, _In_ uint32_t number_of_counters, _In_ const sai_stat_id_t *counter_ids, _Out_ uint64_t *counters)
Get router interface statistics counters. Deprecated for backward compatibility.
enum _sai_router_interface_attr_t sai_router_interface_attr_t
Routing interface attribute IDs.
sai_status_t(* sai_remove_router_interface_fn)(_In_ sai_object_id_t router_interface_id)
Remove router interface.
@ SAI_ROUTER_INTERFACE_ATTR_OUTER_VLAN_ID
Outer Vlan.
@ SAI_ROUTER_INTERFACE_ATTR_SRC_MAC_ADDRESS
MAC Address.
@ SAI_ROUTER_INTERFACE_ATTR_VLAN_ID
Associated Vlan.
@ SAI_ROUTER_INTERFACE_ATTR_PORT_ID
Associated Port, System Port or LAG object id.
@ SAI_ROUTER_INTERFACE_ATTR_MTU
MTU.
@ SAI_ROUTER_INTERFACE_ATTR_CUSTOM_RANGE_START
@ SAI_ROUTER_INTERFACE_ATTR_END
End of attributes.
@ SAI_ROUTER_INTERFACE_ATTR_ADMIN_V6_STATE
Admin V6 state.
@ SAI_ROUTER_INTERFACE_ATTR_NAT_ZONE_ID
NAT Zone ID.
@ SAI_ROUTER_INTERFACE_ATTR_ADMIN_V4_STATE
Admin V4 state.
@ SAI_ROUTER_INTERFACE_ATTR_LOOPBACK_PACKET_ACTION
Packet action when a packet ingress and gets routed on the same RIF.
@ SAI_ROUTER_INTERFACE_ATTR_CUSTOM_RANGE_END
@ SAI_ROUTER_INTERFACE_ATTR_VIRTUAL_ROUTER_ID
Virtual router id.
@ SAI_ROUTER_INTERFACE_ATTR_INGRESS_ACL
RIF bind point for ingress ACL object.
@ SAI_ROUTER_INTERFACE_ATTR_START
Start of attributes.
@ SAI_ROUTER_INTERFACE_ATTR_EGRESS_ACL
RIF bind point for egress ACL object.
@ SAI_ROUTER_INTERFACE_ATTR_V4_MCAST_ENABLE
V4 mcast enable.
@ SAI_ROUTER_INTERFACE_ATTR_INNER_VLAN_ID
Inner Vlan.
@ SAI_ROUTER_INTERFACE_ATTR_NEIGHBOR_MISS_PACKET_ACTION
Packet action when neighbor table lookup miss for this router interface.
@ SAI_ROUTER_INTERFACE_ATTR_ADMIN_MPLS_STATE
Admin MPLS state.
@ SAI_ROUTER_INTERFACE_ATTR_TYPE
Router interface type.
@ SAI_ROUTER_INTERFACE_ATTR_BRIDGE_ID
Associated 1D Bridge.
@ SAI_ROUTER_INTERFACE_ATTR_V6_MCAST_ENABLE
V6 mcast enable.
@ SAI_ROUTER_INTERFACE_ATTR_IS_VIRTUAL
RIF creation is a virtual RIF.
@ SAI_ROUTER_INTERFACE_ATTR_DISABLE_DECREMENT_TTL
To enable/disable Decrement TTL.
@ SAI_ROUTER_INTERFACE_TYPE_PORT
@ SAI_ROUTER_INTERFACE_TYPE_QINQ_PORT
@ SAI_ROUTER_INTERFACE_TYPE_SUB_PORT
@ SAI_ROUTER_INTERFACE_TYPE_LOOPBACK
@ SAI_ROUTER_INTERFACE_TYPE_VLAN
@ SAI_ROUTER_INTERFACE_TYPE_BRIDGE
@ SAI_ROUTER_INTERFACE_TYPE_MPLS_ROUTER
@ SAI_ROUTER_INTERFACE_STAT_OUT_OCTETS
@ SAI_ROUTER_INTERFACE_STAT_OUT_PACKETS
@ SAI_ROUTER_INTERFACE_STAT_OUT_ERROR_PACKETS
@ SAI_ROUTER_INTERFACE_STAT_IN_PACKETS
@ SAI_ROUTER_INTERFACE_STAT_IN_OCTETS
@ SAI_ROUTER_INTERFACE_STAT_IN_ERROR_PACKETS
@ SAI_ROUTER_INTERFACE_STAT_OUT_ERROR_OCTETS
@ SAI_ROUTER_INTERFACE_STAT_IN_ERROR_OCTETS
enum _sai_stats_mode_t sai_stats_mode_t
SAI statistics modes.
sai_status_t(* sai_bulk_object_get_attribute_fn)(_In_ uint32_t object_count, _In_ const sai_object_id_t *object_id, _In_ const uint32_t *attr_count, _Inout_ sai_attribute_t **attr_list, _In_ sai_bulk_op_error_mode_t mode, _Out_ sai_status_t *object_statuses)
Bulk objects get attributes.
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.
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.
sai_status_t(* sai_bulk_object_set_attribute_fn)(_In_ uint32_t object_count, _In_ const sai_object_id_t *object_id, _In_ const sai_attribute_t *attr_list, _In_ sai_bulk_op_error_mode_t mode, _Out_ sai_status_t *object_statuses)
Bulk objects set attributes.
This module defines SAI portable types.
Routing interface methods table retrieved with sai_api_query()