aboutsummaryrefslogtreecommitdiffstats
path: root/src/vnet/fib/fib_path_list.h
diff options
context:
space:
mode:
Diffstat (limited to 'src/vnet/fib/fib_path_list.h')
-rw-r--r--src/vnet/fib/fib_path_list.h12
1 files changed, 12 insertions, 0 deletions
diff --git a/src/vnet/fib/fib_path_list.h b/src/vnet/fib/fib_path_list.h
index a54b79e2a6d..76870dc6c78 100644
--- a/src/vnet/fib/fib_path_list.h
+++ b/src/vnet/fib/fib_path_list.h
@@ -127,8 +127,18 @@ extern fib_node_index_t fib_path_list_path_remove (
extern u32 fib_path_list_get_n_paths(fib_node_index_t pl_index);
+/**
+ * Flags to control how the path-list returns forwarding information
+ */
+typedef enum fib_path_list_fwd_flags_t_
+{
+ FIB_PATH_LIST_FWD_FLAG_NONE = 0,
+ FIB_PATH_LIST_FWD_FLAG_COLLAPSE = (1 << 0),
+} fib_path_list_fwd_flags_t;
+
extern void fib_path_list_contribute_forwarding(fib_node_index_t path_list_index,
fib_forward_chain_type_t type,
+ fib_path_list_fwd_flags_t flags,
dpo_id_t *dpo);
extern void fib_path_list_contribute_urpf(fib_node_index_t path_index,
index_t urpf);
@@ -153,6 +163,8 @@ extern int fib_path_list_is_popular(fib_node_index_t path_list_index);
extern dpo_proto_t fib_path_list_get_proto(fib_node_index_t path_list_index);
extern u8 * fib_path_list_format(fib_node_index_t pl_index,
u8 * s);
+extern u8 * format_fib_path_list(u8 * s, va_list *args);
+
extern index_t fib_path_list_lb_map_add_or_lock(fib_node_index_t pl_index,
const fib_node_index_t *pis);
extern u32 fib_path_list_find_rpath (fib_node_index_t path_list_index,