X-Git-Url: https://gerrit.fd.io/r/gitweb?a=blobdiff_plain;f=src%2Fvnet%2Ffib%2Ffib_entry.h;h=61b814937566b4503cd20862a7071c1f86d0e39f;hb=6150211538ef37e317a1a68cd4d8f169d87becd2;hp=92333e9cc0381acb2f769eb26e235ad718961005;hpb=2303cb181b51f63c909cd506125c1f832432865a;p=vpp.git diff --git a/src/vnet/fib/fib_entry.h b/src/vnet/fib/fib_entry.h index 92333e9cc03..61b81493756 100644 --- a/src/vnet/fib/fib_entry.h +++ b/src/vnet/fib/fib_entry.h @@ -64,6 +64,10 @@ typedef enum fib_source_t_ { * From the BIER subsystem */ FIB_SOURCE_BIER, + /** + * From 6RD. + */ + FIB_SOURCE_6RD, /** * From the control plane API */ @@ -72,6 +76,10 @@ typedef enum fib_source_t_ { * From the CLI. */ FIB_SOURCE_CLI, + /** + * A low (below routing) priority source a plugin can use + */ + FIB_SOURCE_PLUGIN_LOW, /** * LISP */ @@ -153,6 +161,7 @@ STATIC_ASSERT (sizeof(fib_source_t) == 1, [FIB_SOURCE_INTERFACE] = "interface", \ [FIB_SOURCE_PROXY] = "proxy", \ [FIB_SOURCE_BIER] = "BIER", \ + [FIB_SOURCE_6RD] = "6RD", \ [FIB_SOURCE_API] = "API", \ [FIB_SOURCE_CLI] = "CLI", \ [FIB_SOURCE_ADJ] = "adjacency", \ @@ -169,6 +178,7 @@ STATIC_ASSERT (sizeof(fib_source_t) == 1, [FIB_SOURCE_URPF_EXEMPT] = "urpf-exempt", \ [FIB_SOURCE_DEFAULT_ROUTE] = "default-route", \ [FIB_SOURCE_PLUGIN_HI] = "plugin-hi", \ + [FIB_SOURCE_PLUGIN_LOW] = "plugin-low", \ [FIB_SOURCE_INTERPOSE] = "interpose", \ } @@ -589,8 +599,7 @@ extern u32 fib_entry_get_resolving_interface_for_source( extern void fib_entry_encode(fib_node_index_t fib_entry_index, fib_route_path_encode_t **api_rpaths); -extern void fib_entry_get_prefix(fib_node_index_t fib_entry_index, - fib_prefix_t *pfx); +extern const fib_prefix_t *fib_entry_get_prefix(fib_node_index_t fib_entry_index); extern u32 fib_entry_get_fib_index(fib_node_index_t fib_entry_index); extern void fib_entry_set_source_data(fib_node_index_t fib_entry_index, fib_source_t source, @@ -608,6 +617,7 @@ extern int fib_entry_is_sourced(fib_node_index_t fib_entry_index, extern fib_node_index_t fib_entry_get_path_list(fib_node_index_t fib_entry_index); extern int fib_entry_is_resolved(fib_node_index_t fib_entry_index); +extern int fib_entry_is_host(fib_node_index_t fib_entry_index); extern void fib_entry_set_flow_hash_config(fib_node_index_t fib_entry_index, flow_hash_config_t hash_config);