![]() |
FD.io VPP
v21.01-8-g9330de53e
Vector Packet Processing
|
Include dependency graph for ip_neighbor.c:Go to the source code of this file.
Data Structures | |
| struct | ip_neighbor_elt_t_ |
| struct | ip_neighbor_db_t_ |
| struct | ip_neighbor_del_all_ctx_t_ |
| struct | ip_neighbor_sweep_ctx_t_ |
| struct | ip_neighbor_walk_covered_ctx_t_ |
| struct | ip_neighbor_table_bind_ctx_t_ |
Macros | |
| #define | IP_NEIGHBOR_DBG(...) vlib_log_debug (ipn_logger, __VA_ARGS__); |
| #define | IP_NEIGHBOR_INFO(...) vlib_log_notice (ipn_logger, __VA_ARGS__); |
| #define | IP_NEIGHBOR_PROCESS_SLEEP_LONG (0) |
Typedefs | |
| typedef struct ip_neighbor_elt_t_ | ip_neighbor_elt_t |
| typedef struct ip_neighbor_db_t_ | ip_neighbor_db_t |
| typedef struct ip_neighbor_del_all_ctx_t_ | ip_neighbor_del_all_ctx_t |
| typedef struct ip_neighbor_sweep_ctx_t_ | ip_neighbor_sweep_ctx_t |
| typedef struct ip_neighbor_walk_covered_ctx_t_ | ip_neighbor_walk_covered_ctx_t |
| typedef struct ip_neighbor_table_bind_ctx_t_ | ip_neighbor_table_bind_ctx_t |
| typedef enum ip_neighbor_age_state_t_ | ip_neighbor_age_state_t |
| typedef enum ip_neighbor_process_event_t_ | ip_neighbor_process_event_t |
Enumerations | |
| enum | ip_neighbor_age_state_t_ { IP_NEIGHBOR_AGE_ALIVE, IP_NEIGHBOR_AGE_PROBE, IP_NEIGHBOR_AGE_DEAD } |
| enum | ip_neighbor_process_event_t_ { IP_NEIGHBOR_AGE_PROCESS_WAKEUP } |
Variables | |
| static ip_neighbor_t * | ip_neighbor_pool |
| Pool for All IP neighbors. More... | |
| index_t | ip_neighbor_list_head [N_AF] |
| protocol specific lists of time sorted neighbors More... | |
| ip_neighbor_elt_t * | ip_neighbor_elt_pool |
| Pool of linked list elemeents. More... | |
| static vlib_log_class_t | ipn_logger |
| static ip_neighbor_db_t | ip_neighbor_db [N_AF] |
| static vlib_cli_command_t | ip_neighbor_command |
| (constructor) VLIB_CLI_COMMAND (ip_neighbor_command) More... | |
| static vlib_cli_command_t | ip_neighbor_command2 |
| (constructor) VLIB_CLI_COMMAND (ip_neighbor_command2) More... | |
| static vlib_cli_command_t | show_ip_neighbors_cmd_node |
| (constructor) VLIB_CLI_COMMAND (show_ip_neighbors_cmd_node) More... | |
| static vlib_cli_command_t | show_ip4_neighbors_cmd_node |
| (constructor) VLIB_CLI_COMMAND (show_ip4_neighbors_cmd_node) More... | |
| static vlib_cli_command_t | show_ip6_neighbors_cmd_node |
| (constructor) VLIB_CLI_COMMAND (show_ip6_neighbors_cmd_node) More... | |
| static vlib_cli_command_t | show_ip_neighbor_cmd_node |
| (constructor) VLIB_CLI_COMMAND (show_ip_neighbor_cmd_node) More... | |
| static vlib_cli_command_t | show_ip4_neighbor_cmd_node |
| (constructor) VLIB_CLI_COMMAND (show_ip4_neighbor_cmd_node) More... | |
| static vlib_cli_command_t | show_ip6_neighbor_cmd_node |
| (constructor) VLIB_CLI_COMMAND (show_ip6_neighbor_cmd_node) More... | |
| static vlib_cli_command_t | show_ip4_neighbor_sorted_cmd_node |
| (constructor) VLIB_CLI_COMMAND (show_ip4_neighbor_sorted_cmd_node) More... | |
| static vlib_cli_command_t | show_ip6_neighbor_sorted_cmd_node |
| (constructor) VLIB_CLI_COMMAND (show_ip6_neighbor_sorted_cmd_node) More... | |
| static ip_neighbor_vft_t | ip_nbr_vfts [N_AF] |
| static vlib_node_registration_t | ip4_neighbor_age_process_node |
| (constructor) VLIB_REGISTER_NODE (ip4_neighbor_age_process_node) More... | |
| static vlib_node_registration_t | ip6_neighbor_age_process_node |
| (constructor) VLIB_REGISTER_NODE (ip6_neighbor_age_process_node) More... | |
| static vlib_cli_command_t | show_ip_neighbor_cfg_cmd_node |
| (constructor) VLIB_CLI_COMMAND (show_ip_neighbor_cfg_cmd_node) More... | |
| #define IP_NEIGHBOR_DBG | ( | ... | ) | vlib_log_debug (ipn_logger, __VA_ARGS__); |
Definition at line 81 of file ip_neighbor.c.
| #define IP_NEIGHBOR_INFO | ( | ... | ) | vlib_log_notice (ipn_logger, __VA_ARGS__); |
Definition at line 84 of file ip_neighbor.c.
| #define IP_NEIGHBOR_PROCESS_SLEEP_LONG (0) |
Definition at line 1511 of file ip_neighbor.c.
| typedef enum ip_neighbor_age_state_t_ ip_neighbor_age_state_t |
| typedef struct ip_neighbor_db_t_ ip_neighbor_db_t |
| typedef struct ip_neighbor_del_all_ctx_t_ ip_neighbor_del_all_ctx_t |
| typedef struct ip_neighbor_elt_t_ ip_neighbor_elt_t |
| typedef enum ip_neighbor_process_event_t_ ip_neighbor_process_event_t |
| typedef struct ip_neighbor_sweep_ctx_t_ ip_neighbor_sweep_ctx_t |
| typedef struct ip_neighbor_table_bind_ctx_t_ ip_neighbor_table_bind_ctx_t |
| typedef struct ip_neighbor_walk_covered_ctx_t_ ip_neighbor_walk_covered_ctx_t |
| Enumerator | |
|---|---|
| IP_NEIGHBOR_AGE_ALIVE | |
| IP_NEIGHBOR_AGE_PROBE | |
| IP_NEIGHBOR_AGE_DEAD | |
Definition at line 1504 of file ip_neighbor.c.
| Enumerator | |
|---|---|
| IP_NEIGHBOR_AGE_PROCESS_WAKEUP | |
Definition at line 1558 of file ip_neighbor.c.
|
static |
| int ip4_neighbor_proxy_add | ( | u32 | fib_index, |
| const ip4_address_t * | start, | ||
| const ip4_address_t * | end | ||
| ) |
The set of function that vnet requires from the IP neighbour module.
Note that an implementation of these functions will not exist if the ip-neighbour plugin is not loaded. so check the error codes!
Definition at line 1080 of file ip_neighbor.c.
Here is the caller graph for this function:| int ip4_neighbor_proxy_delete | ( | u32 | fib_index, |
| const ip4_address_t * | start, | ||
| const ip4_address_t * | end | ||
| ) |
Definition at line 1093 of file ip_neighbor.c.
| int ip4_neighbor_proxy_disable | ( | u32 | sw_if_index | ) |
Definition at line 1115 of file ip_neighbor.c.
| int ip4_neighbor_proxy_enable | ( | u32 | sw_if_index | ) |
|
static |
|
static |
|
static |
| int ip6_neighbor_proxy_add | ( | u32 | sw_if_index, |
| const ip6_address_t * | addr | ||
| ) |
| int ip6_neighbor_proxy_del | ( | u32 | sw_if_index, |
| const ip6_address_t * | addr | ||
| ) |
Definition at line 1135 of file ip_neighbor.c.
|
static |
|
static |
|
static |
| int ip_neighbor_add | ( | const ip_address_t * | ip, |
| const mac_address_t * | mac, | ||
| u32 | sw_if_index, | ||
| ip_neighbor_flags_t | flags, | ||
| u32 * | stats_index | ||
| ) |
Definition at line 476 of file ip_neighbor.c.
Here is the call graph for this function:
Here is the caller graph for this function:
|
static |
Definition at line 1377 of file ip_neighbor.c.
Here is the call graph for this function:
Here is the caller graph for this function:
|
static |
Definition at line 1419 of file ip_neighbor.c.
Here is the call graph for this function:
Here is the caller graph for this function:
|
static |
Definition at line 252 of file ip_neighbor.c.
Here is the call graph for this function:
Here is the caller graph for this function:
|
static |
Definition at line 299 of file ip_neighbor.c.
Here is the call graph for this function:
Here is the caller graph for this function:
|
static |
Definition at line 1564 of file ip_neighbor.c.
Here is the call graph for this function:
Here is the caller graph for this function:
|
static |
Definition at line 438 of file ip_neighbor.c.
Here is the call graph for this function:
Here is the caller graph for this function:
|
static |
| int ip_neighbor_config | ( | ip_address_family_t | af, |
| u32 | limit, | ||
| u32 | age, | ||
| bool | recycle | ||
| ) |
Definition at line 1686 of file ip_neighbor.c.
Here is the call graph for this function:
Here is the caller graph for this function:
|
static |
|
static |
Definition at line 189 of file ip_neighbor.c.
Here is the call graph for this function:
Here is the caller graph for this function:
|
static |
Definition at line 226 of file ip_neighbor.c.
Here is the call graph for this function:
Here is the caller graph for this function:
|
static |
Definition at line 210 of file ip_neighbor.c.
Here is the call graph for this function:
Here is the caller graph for this function:| int ip_neighbor_del | ( | const ip_address_t * | ip, |
| u32 | sw_if_index | ||
| ) |
Definition at line 573 of file ip_neighbor.c.
Here is the call graph for this function:
Here is the caller graph for this function:| void ip_neighbor_del_all | ( | ip_address_family_t | af, |
| u32 | sw_if_index | ||
| ) |
Definition at line 615 of file ip_neighbor.c.
Here is the call graph for this function:
Here is the caller graph for this function:
|
static |
|
static |
Definition at line 389 of file ip_neighbor.c.
Here is the call graph for this function:
Here is the caller graph for this function:
|
static |
Definition at line 837 of file ip_neighbor.c.
Here is the call graph for this function:
Here is the caller graph for this function:
|
static |
Definition at line 1145 of file ip_neighbor.c.
Here is the call graph for this function:
Here is the caller graph for this function:| void ip_neighbor_flush | ( | ip_address_family_t | af, |
| u32 | sw_if_index | ||
| ) |
Definition at line 1202 of file ip_neighbor.c.
Here is the call graph for this function:
Here is the caller graph for this function:
|
static |
Definition at line 418 of file ip_neighbor.c.
Here is the call graph for this function:
Here is the caller graph for this function:| ip_neighbor_t* ip_neighbor_get | ( | index_t | ipni | ) |
| ip_address_family_t ip_neighbor_get_af | ( | const ip_neighbor_t * | ipn | ) |
|
static |
| const ip_address_t* ip_neighbor_get_ip | ( | const ip_neighbor_t * | ipn | ) |
| const mac_address_t* ip_neighbor_get_mac | ( | const ip_neighbor_t * | ipn | ) |
| const u32 ip_neighbor_get_sw_if_index | ( | const ip_neighbor_t * | ipn | ) |
|
static |
|
static |
|
static |
| void ip_neighbor_learn | ( | const ip_neighbor_learn_t * | l | ) |
Definition at line 711 of file ip_neighbor.c.
Here is the call graph for this function:
Here is the caller graph for this function:
|
static |
| void ip_neighbor_mark | ( | ip_address_family_t | af | ) |
Definition at line 1239 of file ip_neighbor.c.
Here is the call graph for this function:
Here is the caller graph for this function:Definition at line 1227 of file ip_neighbor.c.
Here is the call graph for this function:
Here is the caller graph for this function:
|
static |
Definition at line 346 of file ip_neighbor.c.
Here is the call graph for this function:
Here is the caller graph for this function:
|
static |
Definition at line 371 of file ip_neighbor.c.
Here is the call graph for this function:
Here is the caller graph for this function:
|
static |
Definition at line 357 of file ip_neighbor.c.
Here is the call graph for this function:
Here is the caller graph for this function:
|
static |
Definition at line 381 of file ip_neighbor.c.
Here is the call graph for this function:
Here is the caller graph for this function:| void ip_neighbor_populate | ( | ip_address_family_t | af, |
| u32 | sw_if_index | ||
| ) |
Definition at line 1170 of file ip_neighbor.c.
Here is the call graph for this function:
Here is the caller graph for this function:| void ip_neighbor_probe | ( | const ip_adjacency_t * | adj | ) |
Definition at line 1032 of file ip_neighbor.c.
Here is the call graph for this function:
Here is the caller graph for this function:| void ip_neighbor_probe_dst | ( | u32 | sw_if_index, |
| ip_address_family_t | af, | ||
| const ip46_address_t * | dst | ||
| ) |
Definition at line 1014 of file ip_neighbor.c.
Here is the call graph for this function:
Here is the caller graph for this function:
|
static |
Definition at line 156 of file ip_neighbor.c.
Here is the call graph for this function:
Here is the caller graph for this function:| void ip_neighbor_register | ( | ip_address_family_t | af, |
| const ip_neighbor_vft_t * | vft | ||
| ) |
|
static |
|
static |
Definition at line 886 of file ip_neighbor.c.
Here is the call graph for this function:
Here is the caller graph for this function:
|
static |
Definition at line 860 of file ip_neighbor.c.
Here is the call graph for this function:
Here is the caller graph for this function:
|
static |
Definition at line 819 of file ip_neighbor.c.
Here is the call graph for this function:
Here is the caller graph for this function:| void ip_neighbor_sweep | ( | ip_address_family_t | af | ) |
Definition at line 1266 of file ip_neighbor.c.
Here is the call graph for this function:
Here is the caller graph for this function:Definition at line 1250 of file ip_neighbor.c.
Here is the call graph for this function:
Here is the caller graph for this function:
|
static |
Definition at line 1477 of file ip_neighbor.c.
Here is the call graph for this function:
Here is the caller graph for this function:
|
static |
Definition at line 1491 of file ip_neighbor.c.
Here is the call graph for this function:
Here is the caller graph for this function:
|
static |
| void ip_neighbor_update | ( | vnet_main_t * | vnm, |
| adj_index_t | ai | ||
| ) |
Definition at line 635 of file ip_neighbor.c.
Here is the call graph for this function:
Here is the caller graph for this function:| void ip_neighbor_walk | ( | ip_address_family_t | af, |
| u32 | sw_if_index, | ||
| ip_neighbor_walk_cb_t | cb, | ||
| void * | ctx | ||
| ) |
Definition at line 1340 of file ip_neighbor.c.
Here is the call graph for this function:
Here is the caller graph for this function:Definition at line 1464 of file ip_neighbor.c.
Here is the call graph for this function:
Here is the caller graph for this function:
|
static |
Definition at line 1514 of file ip_neighbor.c.
Here is the call graph for this function:
Here is the caller graph for this function:| VNET_SW_INTERFACE_ADD_DEL_FUNCTION | ( | ip_neighbor_delete_sw_interface | ) |
Here is the caller graph for this function:| VNET_SW_INTERFACE_ADMIN_UP_DOWN_FUNCTION | ( | ip_neighbor_interface_admin_change | ) |
Here is the caller graph for this function:
|
static |
(constructor) VLIB_REGISTER_NODE (ip4_neighbor_age_process_node)
Definition at line 1673 of file ip_neighbor.c.
|
static |
(constructor) VLIB_REGISTER_NODE (ip6_neighbor_age_process_node)
Definition at line 1678 of file ip_neighbor.c.
|
static |
Definition at line 1005 of file ip_neighbor.c.
|
static |
(constructor) VLIB_CLI_COMMAND (ip_neighbor_command)
Definition at line 804 of file ip_neighbor.c.
|
static |
(constructor) VLIB_CLI_COMMAND (ip_neighbor_command2)
Definition at line 810 of file ip_neighbor.c.
|
static |
Definition at line 65 of file ip_neighbor.c.
| ip_neighbor_elt_t* ip_neighbor_elt_pool |
Pool of linked list elemeents.
Definition at line 42 of file ip_neighbor.c.
protocol specific lists of time sorted neighbors
Definition at line 33 of file ip_neighbor.c.
|
static |
Pool for All IP neighbors.
Definition at line 30 of file ip_neighbor.c.
|
static |
Definition at line 61 of file ip_neighbor.c.
|
static |
(constructor) VLIB_CLI_COMMAND (show_ip4_neighbor_cmd_node)
Definition at line 983 of file ip_neighbor.c.
|
static |
(constructor) VLIB_CLI_COMMAND (show_ip4_neighbor_sorted_cmd_node)
Definition at line 993 of file ip_neighbor.c.
|
static |
(constructor) VLIB_CLI_COMMAND (show_ip4_neighbors_cmd_node)
Definition at line 968 of file ip_neighbor.c.
|
static |
(constructor) VLIB_CLI_COMMAND (show_ip6_neighbor_cmd_node)
Definition at line 988 of file ip_neighbor.c.
|
static |
(constructor) VLIB_CLI_COMMAND (show_ip6_neighbor_sorted_cmd_node)
Definition at line 998 of file ip_neighbor.c.
|
static |
(constructor) VLIB_CLI_COMMAND (show_ip6_neighbors_cmd_node)
Definition at line 973 of file ip_neighbor.c.
|
static |
(constructor) VLIB_CLI_COMMAND (show_ip_neighbor_cfg_cmd_node)
Definition at line 1721 of file ip_neighbor.c.
|
static |
(constructor) VLIB_CLI_COMMAND (show_ip_neighbor_cmd_node)
Definition at line 978 of file ip_neighbor.c.
|
static |
(constructor) VLIB_CLI_COMMAND (show_ip_neighbors_cmd_node)
Definition at line 963 of file ip_neighbor.c.