SAI Metadata
Loading...
Searching...
No Matches
saineighbor.h
Go to the documentation of this file.
1
30#if !defined (__SAINEIGHBOR_H_)
31#define __SAINEIGHBOR_H_
32
33#include <saitypes.h>
34
45{
50
59
68
81
94
105
118
129
143
157
168
173
176
179
181
186{
192 sai_object_id_t switch_id;
193
199 sai_object_id_t rif_id;
200
205
207
219typedef sai_status_t (*sai_create_neighbor_entry_fn)(
220 _In_ const sai_neighbor_entry_t *neighbor_entry,
221 _In_ uint32_t attr_count,
222 _In_ const sai_attribute_t *attr_list);
223
233typedef sai_status_t (*sai_remove_neighbor_entry_fn)(
234 _In_ const sai_neighbor_entry_t *neighbor_entry);
235
245 _In_ const sai_neighbor_entry_t *neighbor_entry,
246 _In_ const sai_attribute_t *attr);
247
258 _In_ const sai_neighbor_entry_t *neighbor_entry,
259 _In_ uint32_t attr_count,
260 _Inout_ sai_attribute_t *attr_list);
261
270 _In_ sai_object_id_t switch_id);
271
289typedef sai_status_t (*sai_bulk_create_neighbor_entry_fn)(
290 _In_ uint32_t object_count,
291 _In_ const sai_neighbor_entry_t *neighbor_entry,
292 _In_ const uint32_t *attr_count,
293 _In_ const sai_attribute_t **attr_list,
294 _In_ sai_bulk_op_error_mode_t mode,
295 _Out_ sai_status_t *object_statuses);
296
311typedef sai_status_t (*sai_bulk_remove_neighbor_entry_fn)(
312 _In_ uint32_t object_count,
313 _In_ const sai_neighbor_entry_t *neighbor_entry,
314 _In_ sai_bulk_op_error_mode_t mode,
315 _Out_ sai_status_t *object_statuses);
316
333 _In_ uint32_t object_count,
334 _In_ const sai_neighbor_entry_t *neighbor_entry,
335 _In_ const sai_attribute_t *attr_list,
336 _In_ sai_bulk_op_error_mode_t mode,
337 _Out_ sai_status_t *object_statuses);
338
357 _In_ uint32_t object_count,
358 _In_ const sai_neighbor_entry_t *neighbor_entry,
359 _In_ const uint32_t *attr_count,
360 _Inout_ sai_attribute_t **attr_list,
361 _In_ sai_bulk_op_error_mode_t mode,
362 _Out_ sai_status_t *object_statuses);
363
368{
369 sai_create_neighbor_entry_fn create_neighbor_entry;
370 sai_remove_neighbor_entry_fn remove_neighbor_entry;
371 sai_set_neighbor_entry_attribute_fn set_neighbor_entry_attribute;
372 sai_get_neighbor_entry_attribute_fn get_neighbor_entry_attribute;
373 sai_remove_all_neighbor_entries_fn remove_all_neighbor_entries;
374
375 sai_bulk_create_neighbor_entry_fn create_neighbor_entries;
376 sai_bulk_remove_neighbor_entry_fn remove_neighbor_entries;
377 sai_bulk_set_neighbor_entry_attribute_fn set_neighbor_entries_attribute;
378 sai_bulk_get_neighbor_entry_attribute_fn get_neighbor_entries_attribute;
379
381
385#endif
sai_status_t(* sai_bulk_get_neighbor_entry_attribute_fn)(_In_ uint32_t object_count, _In_ const sai_neighbor_entry_t *neighbor_entry, _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 get attribute on Neighbor entry.
sai_status_t(* sai_bulk_set_neighbor_entry_attribute_fn)(_In_ uint32_t object_count, _In_ const sai_neighbor_entry_t *neighbor_entry, _In_ const sai_attribute_t *attr_list, _In_ sai_bulk_op_error_mode_t mode, _Out_ sai_status_t *object_statuses)
Bulk set attribute on Neighbor entry.
sai_status_t(* sai_get_neighbor_entry_attribute_fn)(_In_ const sai_neighbor_entry_t *neighbor_entry, _In_ uint32_t attr_count, _Inout_ sai_attribute_t *attr_list)
Get neighbor attribute value.
enum _sai_neighbor_entry_attr_t sai_neighbor_entry_attr_t
Attribute Id for SAI neighbor object.
sai_status_t(* sai_remove_all_neighbor_entries_fn)(_In_ sai_object_id_t switch_id)
Remove all neighbor entries.
sai_status_t(* sai_create_neighbor_entry_fn)(_In_ const sai_neighbor_entry_t *neighbor_entry, _In_ uint32_t attr_count, _In_ const sai_attribute_t *attr_list)
Create neighbor entry.
sai_status_t(* sai_remove_neighbor_entry_fn)(_In_ const sai_neighbor_entry_t *neighbor_entry)
Remove neighbor entry.
_sai_neighbor_entry_attr_t
Attribute Id for SAI neighbor object.
Definition saineighbor.h:45
struct _sai_neighbor_api_t sai_neighbor_api_t
Neighbor table methods, retrieved via sai_api_query()
sai_status_t(* sai_bulk_create_neighbor_entry_fn)(_In_ uint32_t object_count, _In_ const sai_neighbor_entry_t *neighbor_entry, _In_ const uint32_t *attr_count, _In_ const sai_attribute_t **attr_list, _In_ sai_bulk_op_error_mode_t mode, _Out_ sai_status_t *object_statuses)
Bulk create Neighbor entry.
sai_status_t(* sai_set_neighbor_entry_attribute_fn)(_In_ const sai_neighbor_entry_t *neighbor_entry, _In_ const sai_attribute_t *attr)
Set neighbor attribute value.
struct _sai_neighbor_entry_t sai_neighbor_entry_t
Neighbor entry.
sai_status_t(* sai_bulk_remove_neighbor_entry_fn)(_In_ uint32_t object_count, _In_ const sai_neighbor_entry_t *neighbor_entry, _In_ sai_bulk_op_error_mode_t mode, _Out_ sai_status_t *object_statuses)
Bulk remove Neighbor entry.
@ SAI_NEIGHBOR_ENTRY_ATTR_IS_LOCAL
Is Neighbor Local.
@ SAI_NEIGHBOR_ENTRY_ATTR_CUSTOM_RANGE_END
@ SAI_NEIGHBOR_ENTRY_ATTR_CUSTOM_RANGE_START
@ SAI_NEIGHBOR_ENTRY_ATTR_PACKET_ACTION
L3 forwarding action for this neighbor.
Definition saineighbor.h:67
@ SAI_NEIGHBOR_ENTRY_ATTR_NO_HOST_ROUTE
Neighbor not to be programmed as a host route entry in ASIC and to be only used to setup next-hop pur...
Definition saineighbor.h:93
@ SAI_NEIGHBOR_ENTRY_ATTR_META_DATA
User based Meta Data.
@ SAI_NEIGHBOR_ENTRY_ATTR_COUNTER_ID
Attach a counter.
@ SAI_NEIGHBOR_ENTRY_ATTR_ENCAP_IMPOSE_INDEX
Encapsulation index is imposed. This is deprecated.
@ SAI_NEIGHBOR_ENTRY_ATTR_START
Start of attributes.
Definition saineighbor.h:49
@ SAI_NEIGHBOR_ENTRY_ATTR_ENCAP_INDEX
Encapsulation Index.
@ SAI_NEIGHBOR_ENTRY_ATTR_USER_TRAP_ID
Generate User Defined Trap ID for trap/log actions.
Definition saineighbor.h:80
@ SAI_NEIGHBOR_ENTRY_ATTR_END
End of attributes.
@ SAI_NEIGHBOR_ENTRY_ATTR_IP_ADDR_FAMILY
Neighbor entry IP address family.
@ SAI_NEIGHBOR_ENTRY_ATTR_DST_MAC_ADDRESS
Destination MAC address for the neighbor Valid only when SAI_NEIGHBOR_ENTRY_ATTR_IS_LOCAL == true.
Definition saineighbor.h:58
This module defines SAI portable types.
Neighbor table methods, retrieved via sai_api_query()
Neighbor entry.
sai_object_id_t switch_id
Switch ID.
sai_ip_address_t ip_address
IP address.
sai_object_id_t rif_id
Router interface ID.