-#ifdef MFIB_DEBUG
-#DEFIne MFIB_ENTRY_DBG(_e, _fmt, _args...) \
-{ \
- u8*__tmp = NULL; \
- __tmp = format(__tmp, "e:[%d:%U", \
- mfib_entry_get_index(_e), \
- format_ip46_address, \
- &_e->mfe_prefix.fp_grp_addr, \
- IP46_TYPE_ANY); \
- __tmp = format(__tmp, "/%d,", \
- _e->mfe_prefix.fp_len); \
- __tmp = format(__tmp, "%U]", \
- mfib_entry_get_index(_e), \
- format_ip46_address, \
- &_e->mfe_prefix.fp_src_addr, \
- IP46_TYPE_ANY); \
- __tmp = format(__tmp, _fmt, ##_args); \
- clib_warning("%s", __tmp); \
- vec_free(__tmp); \
-}
-#else
-#define MFIB_ENTRY_DBG(_e, _fmt, _args...)
-#endif
-
-/**
- * MFIB extensions to each path
- */
-typedef struct mfib_path_ext_t_
-{
- mfib_itf_flags_t mfpe_flags;
- fib_node_index_t mfpe_path;
-} mfib_path_ext_t;
-
-/**
- * The source of an MFIB entry
- */
-typedef struct mfib_entry_src_t_
-{
- /**
- * Which source this is
- */
- mfib_source_t mfes_src;
-
- /**
- * Route flags
- */
- mfib_entry_flags_t mfes_flags;
-
- /**
- * The path-list of forwarding interfaces
- */
- fib_node_index_t mfes_pl;
-
- /**
- * RPF-ID
- */
- fib_rpf_id_t mfes_rpf_id;
-
- /**
- * Hash table of path extensions
- */
- mfib_path_ext_t *mfes_exts;
-
- /**
- * The hash table of all interfaces.
- * This is forwarding time information derived from the paths
- * and their extensions.
- */
- mfib_itf_t *mfes_itfs;
-} mfib_entry_src_t;