25 #ifndef __IP6_MFIB_H__    26 #define __IP6_MFIB_H__ void ip6_mfib_table_entry_insert(ip6_mfib_t *fib, const ip6_address_t *grp, const ip6_address_t *src, u32 len, fib_node_index_t fib_entry_index)
void ip6_mfib_table_entry_remove(ip6_mfib_t *fib, const ip6_address_t *grp, const ip6_address_t *src, u32 len)
u32 ip6_mfib_table_create_and_lock(mfib_source_t src)
enum mfib_source_t_ mfib_source_t
Possible [control plane] sources of MFIB entries. 
u8 * format_ip6_mfib_table_memory(u8 *s, va_list *args)
format (display) ipv6 MFIB mempry usage 
void ip6_mfib_table_destroy(ip6_mfib_t *fib)
#define pool_elt_at_index(p, i)
Returns pointer to element at given index. 
uword * mfib_index_by_table_id
Hash table mapping table id to multicast fib index. 
fib_node_index_t ip6_mfib_table_lookup2(const ip6_mfib_t *mfib, const ip6_address_t *src, const ip6_address_t *grp)
Data-plane lookup function. 
void ip6_mfib_table_walk(ip6_mfib_t *mfib, mfib_table_walk_fn_t fn, void *ctx)
Walk the IP6 mfib table. 
void ip6_mfib_interface_enable_disable(u32 sw_if_index, int is_enable)
Add/remove the interface from the accepting list of the special MFIB entries. 
u32 fib_node_index_t
A typedef of a node index. 
static u32 ip6_mfib_index_from_table_id(u32 table_id)
struct mfib_table_t_ * mfibs
Vector of MFIBs. 
fib_node_index_t ip6_mfib_table_lookup(const ip6_mfib_t *fib, const ip6_address_t *src, const ip6_address_t *grp, u32 len)
The IPv4 Multicast-FIB. 
u32 ip6_mfib_table_get_index_for_sw_if_index(u32 sw_if_index)
int(* mfib_table_walk_fn_t)(fib_node_index_t fei, void *ctx)
Call back function when walking entries in a FIB table. 
static ip6_mfib_t * ip6_mfib_get(u32 index)
Get the FIB at the given index. 
u32 ip6_mfib_table_find_or_create_and_lock(u32 table_id, mfib_source_t src)
Get or create an IPv4 fib. 
fib_node_index_t ip6_mfib_table_lookup_exact_match(const ip6_mfib_t *fib, const ip6_address_t *grp, const ip6_address_t *src, u32 len)