22 #ifndef __ADJ_MIDCHAIN_H__ 23 #define __ADJ_MIDCHAIN_H__
void adj_nbr_midchain_unstack(adj_index_t adj_index)
unstack a midchain.
adj_midchain_flag_t_
Midchain Adjacency sub-type.
u8 * format_adj_midchain(u8 *s, va_list *ap)
Format a midchain adjacency.
void adj_nbr_midchain_stack(adj_index_t adj_index, const dpo_id_t *dpo)
[re]stack a midchain.
The identity of a DPO is a combination of its type and its instance number/index of objects of that t...
Packets TX through the midchain do not increment the interface counters.
u32 adj_index_t
An index for adjacencies.
void adj_nbr_midchain_update_rewrite(adj_index_t adj_index, adj_midchain_fixup_t fixup, adj_midchain_flag_t flags, u8 *rewrite)
Convert an existing neighbour adjacency into a midchain.
void(* adj_midchain_fixup_t)(vlib_main_t *vm, struct ip_adjacency_t_ *adj, vlib_buffer_t *b0)
A function type for post-rewrite fixups on midchain adjacency.
enum adj_midchain_flag_t_ adj_midchain_flag_t
Midchain Adjacency sub-type.
void adj_midchain_module_init(void)
Module initialisation.