Go to the source code of this file.
|
static void | vnet_ip6_fib_init (u32 fib_index) |
|
static u32 | create_fib_with_table_id (u32 table_id, fib_source_t src, fib_table_flags_t flags, u8 *desc) |
|
u32 | ip6_fib_table_find_or_create_and_lock (u32 table_id, fib_source_t src) |
| Get or create an IPv6 fib. More...
|
|
u32 | ip6_fib_table_create_and_lock (fib_source_t src, fib_table_flags_t flags, u8 *desc) |
|
void | ip6_fib_table_destroy (u32 fib_index) |
|
fib_node_index_t | ip6_fib_table_lookup (u32 fib_index, const ip6_address_t *addr, u32 len) |
|
fib_node_index_t | ip6_fib_table_lookup_exact_match (u32 fib_index, const ip6_address_t *addr, u32 len) |
|
static void | compute_prefix_lengths_in_search_order (ip6_fib_table_instance_t *table) |
|
void | ip6_fib_table_entry_remove (u32 fib_index, const ip6_address_t *addr, u32 len) |
|
void | ip6_fib_table_entry_insert (u32 fib_index, const ip6_address_t *addr, u32 len, fib_node_index_t fib_entry_index) |
|
u32 | ip6_fib_table_fwding_lookup_with_if_index (ip6_main_t *im, u32 sw_if_index, const ip6_address_t *dst) |
|
u32 | ip6_fib_table_get_index_for_sw_if_index (u32 sw_if_index) |
|
void | ip6_fib_table_fwding_dpo_update (u32 fib_index, const ip6_address_t *addr, u32 len, const dpo_id_t *dpo) |
|
void | ip6_fib_table_fwding_dpo_remove (u32 fib_index, const ip6_address_t *addr, u32 len, const dpo_id_t *dpo) |
|
static int | ip6_fib_walk_cb (clib_bihash_kv_24_8_t *kvp, void *arg) |
|
void | ip6_fib_table_walk (u32 fib_index, fib_table_walk_fn_t fn, void *arg) |
| Walk all entries in a FIB table N.B: This is NOT safe to deletes. More...
|
|
void | ip6_fib_table_sub_tree_walk (u32 fib_index, const fib_prefix_t *root, fib_table_walk_fn_t fn, void *arg) |
| Walk all entries in a sub-tree of the FIB table N.B: This is NOT safe to deletes. More...
|
|
static fib_table_walk_rc_t | ip6_fib_table_show_walk (fib_node_index_t fib_entry_index, void *arg) |
|
static void | ip6_fib_table_show_all (ip6_fib_t *fib, vlib_main_t *vm) |
|
static void | ip6_fib_table_show_one (ip6_fib_t *fib, vlib_main_t *vm, ip6_address_t *address, u32 mask_len, int detail) |
|
u8 * | format_ip6_fib_table_memory (u8 *s, va_list *args) |
|
static int | count_routes_in_fib_at_prefix_length (clib_bihash_kv_24_8_t *kvp, void *arg) |
|
static clib_error_t * | ip6_show_fib (vlib_main_t *vm, unformat_input_t *input, vlib_cli_command_t *cmd) |
|
◆ ip6_fib_show_ctx_t
◆ ip6_fib_walk_ctx_t
Context when walking the IPv6 table.
Since all VRFs are in the same hash table, we need to filter only those we need as we walk
◆ compute_prefix_lengths_in_search_order()
◆ count_routes_in_fib_at_prefix_length()
◆ create_fib_with_table_id()
◆ format_ip6_fib_table_memory()
u8* format_ip6_fib_table_memory |
( |
u8 * |
s, |
|
|
va_list * |
args |
|
) |
| |
◆ ip6_fib_table_create_and_lock()
◆ ip6_fib_table_destroy()
void ip6_fib_table_destroy |
( |
u32 |
fib_index | ) |
|
◆ ip6_fib_table_entry_insert()
void ip6_fib_table_entry_insert |
( |
u32 |
fib_index, |
|
|
const ip6_address_t * |
addr, |
|
|
u32 |
len, |
|
|
fib_node_index_t |
fib_entry_index |
|
) |
| |
◆ ip6_fib_table_entry_remove()
void ip6_fib_table_entry_remove |
( |
u32 |
fib_index, |
|
|
const ip6_address_t * |
addr, |
|
|
u32 |
len |
|
) |
| |
◆ ip6_fib_table_find_or_create_and_lock()
Get or create an IPv6 fib.
Get or create an IPv4 fib with the provided table ID.
- Parameters
-
im | ip4_main pointer. |
table_id | When set to ~0 , an arbitrary and unused fib ID is picked and can be retrieved with ret->table_id . Otherwise, the fib ID to be used to retrieve or create the desired fib. |
- Returns
- A pointer to the retrieved or created fib.
Definition at line 96 of file ip6_fib.c.
◆ ip6_fib_table_fwding_dpo_remove()
void ip6_fib_table_fwding_dpo_remove |
( |
u32 |
fib_index, |
|
|
const ip6_address_t * |
addr, |
|
|
u32 |
len, |
|
|
const dpo_id_t * |
dpo |
|
) |
| |
◆ ip6_fib_table_fwding_dpo_update()
void ip6_fib_table_fwding_dpo_update |
( |
u32 |
fib_index, |
|
|
const ip6_address_t * |
addr, |
|
|
u32 |
len, |
|
|
const dpo_id_t * |
dpo |
|
) |
| |
◆ ip6_fib_table_fwding_lookup_with_if_index()
u32 ip6_fib_table_fwding_lookup_with_if_index |
( |
ip6_main_t * |
im, |
|
|
u32 |
sw_if_index, |
|
|
const ip6_address_t * |
dst |
|
) |
| |
◆ ip6_fib_table_get_index_for_sw_if_index()
u32 ip6_fib_table_get_index_for_sw_if_index |
( |
u32 |
sw_if_index | ) |
|
◆ ip6_fib_table_lookup()
◆ ip6_fib_table_lookup_exact_match()
◆ ip6_fib_table_show_all()
◆ ip6_fib_table_show_one()
static void ip6_fib_table_show_one |
( |
ip6_fib_t * |
fib, |
|
|
vlib_main_t * |
vm, |
|
|
ip6_address_t * |
address, |
|
|
u32 |
mask_len, |
|
|
int |
detail |
|
) |
| |
|
static |
◆ ip6_fib_table_show_walk()
◆ ip6_fib_table_sub_tree_walk()
Walk all entries in a sub-tree of the FIB table N.B: This is NOT safe to deletes.
If you need to delete walk the whole table and store elements in a vector, then delete the elements
Definition at line 522 of file ip6_fib.c.
◆ ip6_fib_table_walk()
Walk all entries in a FIB table N.B: This is NOT safe to deletes.
If you need to delete walk the whole table and store elements in a vector, then delete the elements
Definition at line 499 of file ip6_fib.c.
◆ ip6_fib_walk_cb()
◆ ip6_show_fib()
◆ vnet_ip6_fib_init()
static void vnet_ip6_fib_init |
( |
u32 |
fib_index | ) |
|
|
static |
◆ ip6_show_fib_command
Initial value:= {
.path = "show ip6 fib",
.short_help = "show ip6 fib [summary] [table <table-id>] [index <fib-id>] [<ip6-addr>[/<width>]] [detail]",
}
static clib_error_t * ip6_show_fib(vlib_main_t *vm, unformat_input_t *input, vlib_cli_command_t *cmd)
(constructor) VLIB_CLI_COMMAND (ip6_show_fib_command)
Definition at line 859 of file ip6_fib.c.