FD.io VPP  v19.01.3-6-g70449b9b9
Vector Packet Processing
ip6_neighbor.h File Reference
+ Include dependency graph for ip6_neighbor.h:
+ This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Data Structures

struct  ip6_neighbor_key_t
 
struct  ip6_neighbor_t
 
struct  wc_nd_report_t
 
struct  icmp6_send_router_solicitation_params_t
 
struct  ra_report_prefix_info_t
 
struct  ra_report_t
 
struct  ip6_neighbor_public_main_t
 

Macros

#define VNET_IP6_NEIGHBOR_RA_FUNCTION(f)   _VNET_IP6_NEIGHBOR_FUNCTION_DECL(f,ra_report)
 

Typedefs

typedef enum ip6_neighbor_flags_t_ ip6_neighbor_flags_t
 

Enumerations

enum  ip6_neighbor_flags_t_ { IP6_NEIGHBOR_FLAG_STATIC = (1 << 0), IP6_NEIGHBOR_FLAG_DYNAMIC = (1 << 1), IP6_NEIGHBOR_FLAG_NO_FIB_ENTRY = (1 << 2) }
 

Functions

ip6_address_t ip6_neighbor_get_link_local_address (u32 sw_if_index)
 
clib_error_tip6_neighbor_set_link_local_address (vlib_main_t *vm, u32 sw_if_index, ip6_address_t *address)
 
ip6_neighbor_tip6_neighbors_pool (void)
 
ip6_neighbor_tip6_neighbors_entries (u32 sw_if_index)
 
int ip6_neighbor_ra_config (vlib_main_t *vm, u32 sw_if_index, u8 suppress, u8 managed, u8 other, u8 ll_option, u8 send_unicast, u8 cease, u8 use_lifetime, u32 lifetime, u32 initial_count, u32 initial_interval, u32 max_interval, u32 min_interval, u8 is_no)
 
int ip6_neighbor_ra_prefix (vlib_main_t *vm, u32 sw_if_index, ip6_address_t *prefix_addr, u8 prefix_len, u8 use_default, u32 val_lifetime, u32 pref_lifetime, u8 no_advertise, u8 off_link, u8 no_autoconfig, u8 no_onlink, u8 is_no)
 
clib_error_tip6_set_neighbor_limit (u32 neighbor_limit)
 
void vnet_register_ip6_neighbor_resolution_event (vnet_main_t *vnm, void *address_arg, uword node_index, uword type_opaque, uword data)
 
int vnet_set_ip6_ethernet_neighbor (vlib_main_t *vm, u32 sw_if_index, const ip6_address_t *a, const u8 *link_layer_address, uword n_bytes_link_layer_address, int is_static, int is_no_fib_entry)
 
int vnet_unset_ip6_ethernet_neighbor (vlib_main_t *vm, u32 sw_if_index, const ip6_address_t *a)
 
int ip6_neighbor_proxy_add_del (u32 sw_if_index, ip6_address_t *addr, u8 is_add)
 
u32 ip6_neighbor_sw_interface_add_del (vnet_main_t *vnm, u32 sw_if_index, u32 is_add)
 create and initialize router advertisement parameters with default values for this intfc More...
 
void wc_nd_set_publisher_node (uword node_index, uword event_type)
 
void icmp6_send_router_solicitation (vlib_main_t *vm, u32 sw_if_index, u8 stop, icmp6_send_router_solicitation_params_t *params)
 
void ra_set_publisher_node (uword node_index, uword event_type)
 
clib_error_tcall_ip6_neighbor_callbacks (void *data, _vnet_ip6_neighbor_function_list_elt_t *elt)
 

Variables

ip6_neighbor_public_main_t ip6_neighbor_public_main
 

Macro Definition Documentation

◆ VNET_IP6_NEIGHBOR_RA_FUNCTION

#define VNET_IP6_NEIGHBOR_RA_FUNCTION (   f)    _VNET_IP6_NEIGHBOR_FUNCTION_DECL(f,ra_report)

Definition at line 198 of file ip6_neighbor.h.

Typedef Documentation

◆ ip6_neighbor_flags_t

Enumeration Type Documentation

◆ ip6_neighbor_flags_t_

Enumerator
IP6_NEIGHBOR_FLAG_STATIC 
IP6_NEIGHBOR_FLAG_DYNAMIC 
IP6_NEIGHBOR_FLAG_NO_FIB_ENTRY 

Definition at line 31 of file ip6_neighbor.h.

Function Documentation

◆ call_ip6_neighbor_callbacks()

clib_error_t* call_ip6_neighbor_callbacks ( void *  data,
_vnet_ip6_neighbor_function_list_elt_t *  elt 
)

Definition at line 1469 of file ip6_neighbor.c.

+ Here is the caller graph for this function:

◆ icmp6_send_router_solicitation()

void icmp6_send_router_solicitation ( vlib_main_t vm,
u32  sw_if_index,
u8  stop,
icmp6_send_router_solicitation_params_t params 
)

Definition at line 2501 of file ip6_neighbor.c.

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ ip6_neighbor_get_link_local_address()

ip6_address_t ip6_neighbor_get_link_local_address ( u32  sw_if_index)

Definition at line 241 of file ip6_neighbor.c.

+ Here is the caller graph for this function:

◆ ip6_neighbor_proxy_add_del()

int ip6_neighbor_proxy_add_del ( u32  sw_if_index,
ip6_address_t addr,
u8  is_add 
)

Definition at line 4845 of file ip6_neighbor.c.

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ ip6_neighbor_ra_config()

int ip6_neighbor_ra_config ( vlib_main_t vm,
u32  sw_if_index,
u8  suppress,
u8  managed,
u8  other,
u8  ll_option,
u8  send_unicast,
u8  cease,
u8  use_lifetime,
u32  lifetime,
u32  initial_count,
u32  initial_interval,
u32  max_interval,
u32  min_interval,
u8  is_no 
)

Definition at line 3406 of file ip6_neighbor.c.

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ ip6_neighbor_ra_prefix()

int ip6_neighbor_ra_prefix ( vlib_main_t vm,
u32  sw_if_index,
ip6_address_t prefix_addr,
u8  prefix_len,
u8  use_default,
u32  val_lifetime,
u32  pref_lifetime,
u8  no_advertise,
u8  off_link,
u8  no_autoconfig,
u8  no_onlink,
u8  is_no 
)

Definition at line 3508 of file ip6_neighbor.c.

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ ip6_neighbor_set_link_local_address()

clib_error_t* ip6_neighbor_set_link_local_address ( vlib_main_t vm,
u32  sw_if_index,
ip6_address_t address 
)

Definition at line 4450 of file ip6_neighbor.c.

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ ip6_neighbor_sw_interface_add_del()

u32 ip6_neighbor_sw_interface_add_del ( vnet_main_t vnm,
u32  sw_if_index,
u32  is_add 
)

create and initialize router advertisement parameters with default values for this intfc

Definition at line 2606 of file ip6_neighbor.c.

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ ip6_neighbors_entries()

ip6_neighbor_t* ip6_neighbors_entries ( u32  sw_if_index)

Definition at line 1010 of file ip6_neighbor.c.

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ ip6_neighbors_pool()

ip6_neighbor_t* ip6_neighbors_pool ( void  )

Definition at line 1003 of file ip6_neighbor.c.

+ Here is the caller graph for this function:

◆ ip6_set_neighbor_limit()

clib_error_t* ip6_set_neighbor_limit ( u32  neighbor_limit)

Definition at line 4568 of file ip6_neighbor.c.

+ Here is the caller graph for this function:

◆ ra_set_publisher_node()

void ra_set_publisher_node ( uword  node_index,
uword  event_type 
)

Definition at line 330 of file ip6_neighbor.c.

+ Here is the caller graph for this function:

◆ vnet_register_ip6_neighbor_resolution_event()

void vnet_register_ip6_neighbor_resolution_event ( vnet_main_t vnm,
void *  address_arg,
uword  node_index,
uword  type_opaque,
uword  data 
)

Definition at line 4667 of file ip6_neighbor.c.

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ vnet_set_ip6_ethernet_neighbor()

int vnet_set_ip6_ethernet_neighbor ( vlib_main_t vm,
u32  sw_if_index,
const ip6_address_t a,
const u8 link_layer_address,
uword  n_bytes_link_layer_address,
int  is_static,
int  is_no_fib_entry 
)

Definition at line 775 of file ip6_neighbor.c.

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ vnet_unset_ip6_ethernet_neighbor()

int vnet_unset_ip6_ethernet_neighbor ( vlib_main_t vm,
u32  sw_if_index,
const ip6_address_t a 
)

Definition at line 936 of file ip6_neighbor.c.

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ wc_nd_set_publisher_node()

void wc_nd_set_publisher_node ( uword  node_index,
uword  event_type 
)

Definition at line 299 of file ip6_neighbor.c.

+ Here is the caller graph for this function:

Variable Documentation

◆ ip6_neighbor_public_main

ip6_neighbor_public_main_t ip6_neighbor_public_main

Definition at line 234 of file ip6_neighbor.c.