Go to the source code of this file.
|
index_t | l3xc_find (u32 sw_if_index, fib_protocol_t fproto) |
| Find a L3 XC object from an interfce and FIB protocol. More...
|
|
static void | l3xc_db_add (u32 sw_if_index, fib_protocol_t fproto, index_t l3xci) |
|
static void | l3xc_db_remove (u32 sw_if_index, fib_protocol_t fproto) |
|
static void | l3xc_stack (l3xc_t *l3xc) |
|
int | l3xc_update (u32 sw_if_index, u8 is_ip6, const fib_route_path_t *rpaths) |
| Create or update an L3XC Policy. More...
|
|
int | l3xc_delete (u32 sw_if_index, u8 is_ip6) |
| Delete an L3XC. More...
|
|
static clib_error_t * | l3xc_cmd (vlib_main_t *vm, unformat_input_t *main_input, vlib_cli_command_t *cmd) |
|
static u8 * | format_l3xc (u8 *s, va_list *args) |
|
void | l3xc_walk (l3xc_walk_cb_t cb, void *ctx) |
| Walk/visit each of the L3XC policies. More...
|
|
static clib_error_t * | l3xc_show_cmd (vlib_main_t *vm, unformat_input_t *input, vlib_cli_command_t *cmd) |
|
static fib_node_t * | l3xc_get_node (fib_node_index_t index) |
|
static l3xc_t * | l3xc_get_from_node (fib_node_t *node) |
|
static void | l3xc_last_lock_gone (fib_node_t *node) |
|
static fib_node_back_walk_rc_t | l3xc_back_walk_notify (fib_node_t *node, fib_node_back_walk_ctx_t *ctx) |
|
static clib_error_t * | l3xc_init (vlib_main_t *vm) |
|
◆ format_l3xc()
static u8* format_l3xc |
( |
u8 * |
s, |
|
|
va_list * |
args |
|
) |
| |
|
static |
◆ l3xc_back_walk_notify()
◆ l3xc_cmd()
◆ l3xc_db_add()
◆ l3xc_db_remove()
◆ l3xc_delete()
int l3xc_delete |
( |
u32 |
sw_if_index, |
|
|
u8 |
is_ip6 |
|
) |
| |
Delete an L3XC.
- Parameters
-
sw_if_index_index | the input interface |
Definition at line 156 of file l3xc.c.
◆ l3xc_find()
Find a L3 XC object from an interfce and FIB protocol.
Definition at line 38 of file l3xc.c.
◆ l3xc_get_from_node()
◆ l3xc_get_node()
◆ l3xc_init()
◆ l3xc_last_lock_gone()
static void l3xc_last_lock_gone |
( |
fib_node_t * |
node | ) |
|
|
static |
◆ l3xc_show_cmd()
◆ l3xc_stack()
static void l3xc_stack |
( |
l3xc_t * |
l3xc | ) |
|
|
static |
◆ l3xc_update()
Create or update an L3XC Policy.
- Parameters
-
sw_if_index_index | the input interface |
rpaths | The set of paths to add to the forwarding set |
- Returns
- error code
Definition at line 83 of file l3xc.c.
◆ l3xc_walk()
Walk/visit each of the L3XC policies.
Definition at line 303 of file l3xc.c.
◆ l3xc_cmd_node
Initial value:= {
.path = "l3xc",
.short_help = "l3xc [add|del] <INTERFACE> via ...",
.is_mp_safe = 1,
}
static clib_error_t * l3xc_cmd(vlib_main_t *vm, unformat_input_t *main_input, vlib_cli_command_t *cmd)
Create an L3XC policy.
(constructor) VLIB_CLI_COMMAND (l3xc_cmd_node)
Definition at line 270 of file l3xc.c.
◆ l3xc_db
DB of L3XC objects.
Definition at line 35 of file l3xc.c.
◆ l3xc_fib_node_type
FIB node type the attachment is registered.
Definition at line 25 of file l3xc.c.
◆ l3xc_pool
Pool of L3XC objects.
Data-plane functions.
Definition at line 30 of file l3xc.c.
◆ l3xc_show_cmd_node
Initial value:= {
.path = "show l3xc",
.short_help = "show l3xc",
.is_mp_safe = 1,
}
static clib_error_t * l3xc_show_cmd(vlib_main_t *vm, unformat_input_t *input, vlib_cli_command_t *cmd)
(constructor) VLIB_CLI_COMMAND (l3xc_show_cmd_node)
Definition at line 333 of file l3xc.c.
◆ l3xc_vft
Initial value:= {
}
static fib_node_t * l3xc_get_node(fib_node_index_t index)
static fib_node_back_walk_rc_t l3xc_back_walk_notify(fib_node_t *node, fib_node_back_walk_ctx_t *ctx)
static void l3xc_last_lock_gone(fib_node_t *node)
Definition at line 374 of file l3xc.c.