u32 adj_child_add(adj_index_t adj_index, fib_node_type_t type, fib_node_index_t child_index)
Add a child dependent to an adjacency.
enum fib_node_type_t_ fib_node_type_t
The types of nodes in a FIB graph.
bad routing header type(not 4)") sr_error (NO_MORE_SEGMENTS
Definitions for all things IP (v4|v6) unicast and multicast lookup related.
void adj_walk(u32 sw_if_index, adj_walk_cb_t cb, void *ctx)
Walk the Adjacencies on a given interface.
static ip_adjacency_t * adj_get(adj_index_t adj_index)
Get a pointer to an adjacency object from its index.
#define vec_elt_at_index(v, i)
Get vector value at index i checking that i is in bounds.
ip_adjacency_t * adj_pool
The global adjacnecy pool.
void adj_lock(adj_index_t adj_index)
An adjacency is a representation of an attached L3 peer.
const u8 * adj_get_rewrite(adj_index_t ai)
Return the link type of the adjacency.
u32 fib_node_index_t
A typedef of a node index.
adj_walk_rc_t(* adj_walk_cb_t)(adj_index_t ai, void *ctx)
Call back function when walking adjacencies.
u32 adj_index_t
An index for adjacencies.
enum vnet_link_t_ vnet_link_t
Link Type: A description of the protocol of packets on the link.
vnet_link_t adj_get_link_type(adj_index_t ai)
Return the link type of the adjacency.
vlib_combined_counter_main_t adjacency_counters
Adjacency packet counters.
void adj_child_remove(adj_index_t adj_index, u32 sibling_index)
Remove a child dependent.
u32 adj_get_sw_if_index(adj_index_t ai)
Return the sw interface index of the adjacency.
A collection of combined counters.
void adj_unlock(adj_index_t adj_index)
Release a reference counting lock on the adjacency.