Go to the source code of this file.
|
static lookup_dpo_t * | lookup_dpo_alloc (void) |
|
static index_t | lookup_dpo_get_index (lookup_dpo_t *lkd) |
|
static void | lookup_dpo_add_or_lock_i (fib_node_index_t fib_index, dpo_proto_t proto, lookup_cast_t cast, lookup_input_t input, lookup_table_t table_config, dpo_id_t *dpo) |
|
void | lookup_dpo_add_or_lock_w_fib_index (fib_node_index_t fib_index, dpo_proto_t proto, lookup_cast_t cast, lookup_input_t input, lookup_table_t table_config, dpo_id_t *dpo) |
|
void | lookup_dpo_add_or_lock_w_table_id (u32 table_id, dpo_proto_t proto, lookup_cast_t cast, lookup_input_t input, lookup_table_t table_config, dpo_id_t *dpo) |
|
u8 * | format_lookup_dpo (u8 *s, va_list *args) |
|
static void | lookup_dpo_lock (dpo_id_t *dpo) |
|
static void | lookup_dpo_unlock (dpo_id_t *dpo) |
|
static uword | lookup_dpo_ip4_inline (vlib_main_t *vm, vlib_node_runtime_t *node, vlib_frame_t *from_frame, int input_src_addr, int table_from_interface) |
|
static u8 * | format_lookup_trace (u8 *s, va_list *args) |
|
VLIB_NODE_FN() | lookup_ip4_dst_node (vlib_main_t *vm, vlib_node_runtime_t *node, vlib_frame_t *from_frame) |
|
VLIB_NODE_FN() | lookup_ip4_dst_itf_node (vlib_main_t *vm, vlib_node_runtime_t *node, vlib_frame_t *from_frame) |
|
VLIB_NODE_FN() | lookup_ip4_src_node (vlib_main_t *vm, vlib_node_runtime_t *node, vlib_frame_t *from_frame) |
|
static uword | lookup_dpo_ip6_inline (vlib_main_t *vm, vlib_node_runtime_t *node, vlib_frame_t *from_frame, int input_src_addr, int table_from_interface) |
|
VLIB_NODE_FN() | lookup_ip6_dst_node (vlib_main_t *vm, vlib_node_runtime_t *node, vlib_frame_t *from_frame) |
|
VLIB_NODE_FN() | lookup_ip6_dst_itf_node (vlib_main_t *vm, vlib_node_runtime_t *node, vlib_frame_t *from_frame) |
|
VLIB_NODE_FN() | lookup_ip6_src_node (vlib_main_t *vm, vlib_node_runtime_t *node, vlib_frame_t *from_frame) |
|
static uword | lookup_dpo_mpls_inline (vlib_main_t *vm, vlib_node_runtime_t *node, vlib_frame_t *from_frame, int table_from_interface) |
|
static u8 * | format_lookup_mpls_trace (u8 *s, va_list *args) |
|
VLIB_NODE_FN() | lookup_mpls_dst_node (vlib_main_t *vm, vlib_node_runtime_t *node, vlib_frame_t *from_frame) |
|
VLIB_NODE_FN() | lookup_mpls_dst_itf_node (vlib_main_t *vm, vlib_node_runtime_t *node, vlib_frame_t *from_frame) |
|
static uword | lookup_dpo_ip_dst_mcast_inline (vlib_main_t *vm, vlib_node_runtime_t *node, vlib_frame_t *from_frame, int is_v4) |
|
VLIB_NODE_FN() | lookup_ip4_dst_mcast_node (vlib_main_t *vm, vlib_node_runtime_t *node, vlib_frame_t *from_frame) |
|
VLIB_NODE_FN() | lookup_ip6_dst_mcast_node (vlib_main_t *vm, vlib_node_runtime_t *node, vlib_frame_t *from_frame) |
|
static void | lookup_dpo_mem_show (void) |
|
static clib_error_t * | lookup_dpo_show (vlib_main_t *vm, unformat_input_t *input, vlib_cli_command_t *cmd) |
|
void | lookup_dpo_module_init (void) |
|
◆ FOR_EACH_LOOKUP_SUB_TYPE
◆ LOOKUP_SUB_TYPE_NUM
◆ MAX_LUKPS_PER_PACKET
#define MAX_LUKPS_PER_PACKET 4 |
If a packet encounters a lookup DPO more than the many times then we assume there is a loop in the forward graph and drop the packet.
Definition at line 35 of file lookup_dpo.c.
◆ lookup_sub_type_t
Enumeration of the lookup subtypes.
◆ lookup_trace_t
◆ mfib_forward_lookup_next_t
◆ lookup_ip_dst_mcast_next_t_
Enumerator |
---|
LOOKUP_IP_DST_MCAST_NEXT_DROP | |
LOOKUP_IP_DST_MCAST_NEXT_RPF | |
LOOKUP_IP_DST_MCAST_N_NEXT | |
Definition at line 1170 of file lookup_dpo.c.
◆ lookup_sub_type_t_
Enumeration of the lookup subtypes.
Enumerator |
---|
LOOKUP_SUB_TYPE_SRC | |
LOOKUP_SUB_TYPE_DST | |
LOOKUP_SUB_TYPE_DST_MCAST | |
LOOKUP_SUB_TYPE_DST_TABLE_FROM_INTERFACE | |
Definition at line 40 of file lookup_dpo.c.
◆ format_lookup_dpo()
u8* format_lookup_dpo |
( |
u8 * |
s, |
|
|
va_list * |
args |
|
) |
| |
◆ format_lookup_mpls_trace()
static u8* format_lookup_mpls_trace |
( |
u8 * |
s, |
|
|
va_list * |
args |
|
) |
| |
|
static |
◆ format_lookup_trace()
static u8* format_lookup_trace |
( |
u8 * |
s, |
|
|
va_list * |
args |
|
) |
| |
|
static |
◆ lookup_dpo_add_or_lock_i()
◆ lookup_dpo_add_or_lock_w_fib_index()
◆ lookup_dpo_add_or_lock_w_table_id()
◆ lookup_dpo_alloc()
◆ lookup_dpo_get_index()
◆ lookup_dpo_ip4_inline()
◆ lookup_dpo_ip6_inline()
◆ lookup_dpo_ip_dst_mcast_inline()
◆ lookup_dpo_lock()
static void lookup_dpo_lock |
( |
dpo_id_t * |
dpo | ) |
|
|
static |
◆ lookup_dpo_mem_show()
static void lookup_dpo_mem_show |
( |
void |
| ) |
|
|
static |
◆ lookup_dpo_module_init()
void lookup_dpo_module_init |
( |
void |
| ) |
|
◆ lookup_dpo_mpls_inline()
◆ lookup_dpo_show()
◆ lookup_dpo_unlock()
static void lookup_dpo_unlock |
( |
dpo_id_t * |
dpo | ) |
|
|
static |
◆ lookup_ip4_dst_itf_node()
◆ lookup_ip4_dst_mcast_node()
◆ lookup_ip4_dst_node()
◆ lookup_ip4_src_node()
◆ lookup_ip6_dst_itf_node()
◆ lookup_ip6_dst_mcast_node()
◆ lookup_ip6_dst_node()
◆ lookup_ip6_src_node()
◆ lookup_mpls_dst_itf_node()
◆ lookup_mpls_dst_node()
◆ lkd_vft
◆ lkd_vft_w_mem_show
◆ lookup_cast_names
◆ lookup_dpo_pool
pool of all MPLS Label DPOs
Definition at line 55 of file lookup_dpo.c.
◆ lookup_dpo_sub_types
An array of registered DPO type values for the sub-types.
Definition at line 60 of file lookup_dpo.c.
◆ lookup_dst_from_interface_ip4_nodes
const static char* const lookup_dst_from_interface_ip4_nodes[] |
|
static |
Initial value:=
{
"lookup-ip4-dst-itf",
NULL,
}
Definition at line 1390 of file lookup_dpo.c.
◆ lookup_dst_from_interface_ip6_nodes
const static char* const lookup_dst_from_interface_ip6_nodes[] |
|
static |
Initial value:=
{
"lookup-ip6-dst-itf",
NULL,
}
Definition at line 1395 of file lookup_dpo.c.
◆ lookup_dst_from_interface_mpls_nodes
const static char* const lookup_dst_from_interface_mpls_nodes[] |
|
static |
Initial value:=
{
"lookup-mpls-dst-itf",
NULL,
}
Definition at line 1400 of file lookup_dpo.c.
◆ lookup_dst_from_interface_nodes
const static char* const * const lookup_dst_from_interface_nodes[DPO_PROTO_NUM] |
|
static |
◆ lookup_dst_ip4_nodes
const static char* const lookup_dst_ip4_nodes[] |
|
static |
Initial value:=
{
"lookup-ip4-dst",
NULL,
}
Definition at line 1352 of file lookup_dpo.c.
◆ lookup_dst_ip6_nodes
const static char* const lookup_dst_ip6_nodes[] |
|
static |
Initial value:=
{
"lookup-ip6-dst",
NULL,
}
Definition at line 1357 of file lookup_dpo.c.
◆ lookup_dst_mcast_ip4_nodes
const static char* const lookup_dst_mcast_ip4_nodes[] |
|
static |
Initial value:=
{
"lookup-ip4-dst-mcast",
NULL,
}
Definition at line 1374 of file lookup_dpo.c.
◆ lookup_dst_mcast_ip6_nodes
const static char* const lookup_dst_mcast_ip6_nodes[] |
|
static |
Initial value:=
{
"lookup-ip6-dst-mcast",
NULL,
}
Definition at line 1379 of file lookup_dpo.c.
◆ lookup_dst_mcast_nodes
const static char* const * const lookup_dst_mcast_nodes[DPO_PROTO_NUM] |
|
static |
◆ lookup_dst_mpls_nodes
const static char* const lookup_dst_mpls_nodes[] |
|
static |
Initial value:=
{
"lookup-mpls-dst",
NULL,
}
Definition at line 1362 of file lookup_dpo.c.
◆ lookup_dst_nodes
◆ lookup_input_names
◆ lookup_ip4_dst_itf_node
Initial value:= {
.name = "lookup-ip4-dst-itf",
.vector_size =
sizeof (
u32),
.sibling_of = "ip4-lookup",
}
(constructor) VLIB_REGISTER_NODE (lookup_ip4_dst_itf_node)
Definition at line 620 of file lookup_dpo.c.
◆ lookup_ip4_dst_mcast_node
Initial value:= {
.name = "lookup-ip4-dst-mcast",
.vector_size =
sizeof (
u32),
.next_nodes = {
},
}
(constructor) VLIB_REGISTER_NODE (lookup_ip4_dst_mcast_node)
Definition at line 1283 of file lookup_dpo.c.
◆ lookup_ip4_dst_node
Initial value:= {
.name = "lookup-ip4-dst",
.vector_size =
sizeof (
u32),
.sibling_of = "ip4-lookup",
}
(constructor) VLIB_REGISTER_NODE (lookup_ip4_dst_node)
Definition at line 606 of file lookup_dpo.c.
◆ lookup_ip4_src_node
Initial value:= {
.name = "lookup-ip4-src",
.vector_size =
sizeof (
u32),
.sibling_of = "ip4-lookup",
}
(constructor) VLIB_REGISTER_NODE (lookup_ip4_src_node)
Definition at line 634 of file lookup_dpo.c.
◆ lookup_ip6_dst_itf_node
Initial value:= {
.name = "lookup-ip6-dst-itf",
.vector_size =
sizeof (
u32),
.sibling_of = "ip6-lookup",
}
(constructor) VLIB_REGISTER_NODE (lookup_ip6_dst_itf_node)
Definition at line 964 of file lookup_dpo.c.
◆ lookup_ip6_dst_mcast_node
Initial value:= {
.name = "lookup-ip6-dst-mcast",
.vector_size =
sizeof (
u32),
.next_nodes = {
},
}
(constructor) VLIB_REGISTER_NODE (lookup_ip6_dst_mcast_node)
Definition at line 1302 of file lookup_dpo.c.
◆ lookup_ip6_dst_node
Initial value:= {
.name = "lookup-ip6-dst",
.vector_size =
sizeof (
u32),
.sibling_of = "ip6-lookup",
}
(constructor) VLIB_REGISTER_NODE (lookup_ip6_dst_node)
Definition at line 950 of file lookup_dpo.c.
◆ lookup_ip6_src_node
Initial value:= {
.name = "lookup-ip6-src",
.vector_size =
sizeof (
u32),
.sibling_of = "ip6-lookup",
}
(constructor) VLIB_REGISTER_NODE (lookup_ip6_src_node)
Definition at line 978 of file lookup_dpo.c.
◆ lookup_mpls_dst_itf_node
Initial value:= {
.name = "lookup-mpls-dst-itf",
.vector_size =
sizeof (
u32),
.sibling_of = "mpls-lookup",
.n_next_nodes = 0,
}
(constructor) VLIB_REGISTER_NODE (lookup_mpls_dst_itf_node)
Definition at line 1162 of file lookup_dpo.c.
◆ lookup_mpls_dst_node
Initial value:= {
.name = "lookup-mpls-dst",
.vector_size =
sizeof (
u32),
.sibling_of = "mpls-lookup",
.n_next_nodes = 0,
}
(constructor) VLIB_REGISTER_NODE (lookup_mpls_dst_node)
Definition at line 1147 of file lookup_dpo.c.
◆ lookup_src_ip4_nodes
const static char* const lookup_src_ip4_nodes[] |
|
static |
Initial value:=
{
"lookup-ip4-src",
NULL,
}
Definition at line 1335 of file lookup_dpo.c.
◆ lookup_src_ip6_nodes
const static char* const lookup_src_ip6_nodes[] |
|
static |
Initial value:=
{
"lookup-ip6-src",
NULL,
}
Definition at line 1340 of file lookup_dpo.c.
◆ lookup_src_nodes
◆ replicate_show_command
Initial value:= {
.path = "show lookup-dpo",
.short_help = "show lookup-dpo [<index>]",
}
(constructor) VLIB_CLI_COMMAND (replicate_show_command)
Definition at line 1450 of file lookup_dpo.c.