Go to the source code of this file.
|
static u8 * | format_ethernet_input_trace (u8 *s, va_list *va) |
|
static_always_inline void | parse_header (ethernet_input_variant_t variant, vlib_buffer_t *b0, u16 *type, u16 *orig_type, u16 *outer_id, u16 *inner_id, u32 *match_flags) |
|
static_always_inline void | identify_subint (vnet_hw_interface_t *hi, vlib_buffer_t *b0, u32 match_flags, main_intf_t *main_intf, vlan_intf_t *vlan_intf, qinq_intf_t *qinq_intf, u32 *new_sw_if_index, u8 *error0, u32 *is_l2) |
|
static_always_inline void | determine_next_node (ethernet_main_t *em, ethernet_input_variant_t variant, u32 is_l20, u32 type0, vlib_buffer_t *b0, u8 *error0, u8 *next0) |
|
static_always_inline uword | ethernet_input_inline (vlib_main_t *vm, vlib_node_runtime_t *node, vlib_frame_t *from_frame, ethernet_input_variant_t variant) |
|
static uword | ethernet_input (vlib_main_t *vm, vlib_node_runtime_t *node, vlib_frame_t *from_frame) |
|
static uword | ethernet_input_type (vlib_main_t *vm, vlib_node_runtime_t *node, vlib_frame_t *from_frame) |
|
static uword | ethernet_input_not_l2 (vlib_main_t *vm, vlib_node_runtime_t *node, vlib_frame_t *from_frame) |
|
static subint_config_t * | ethernet_sw_interface_get_config (vnet_main_t *vnm, u32 sw_if_index, u32 *flags, u32 *unsupported) |
|
clib_error_t * | ethernet_sw_interface_up_down (vnet_main_t *vnm, u32 sw_if_index, u32 flags) |
|
| VNET_SW_INTERFACE_ADMIN_UP_DOWN_FUNCTION (ethernet_sw_interface_up_down) |
|
void | ethernet_sw_interface_set_l2_mode (vnet_main_t *vnm, u32 sw_if_index, u32 l2) |
|
void | ethernet_sw_interface_set_l2_mode_noport (vnet_main_t *vnm, u32 sw_if_index, u32 l2) |
|
static clib_error_t * | ethernet_sw_interface_add_del (vnet_main_t *vnm, u32 sw_if_index, u32 is_create) |
|
| VNET_SW_INTERFACE_ADD_DEL_FUNCTION (ethernet_sw_interface_add_del) |
|
| VLIB_NODE_FUNCTION_MULTIARCH (ethernet_input_not_l2_node, ethernet_input_not_l2) |
|
clib_error_t * | next_by_ethertype_init (next_by_ethertype_t *l3_next) |
|
clib_error_t * | next_by_ethertype_register (next_by_ethertype_t *l3_next, u32 ethertype, u32 next_index) |
|
static clib_error_t * | ethernet_input_init (vlib_main_t *vm) |
|
void | ethernet_register_input_type (vlib_main_t *vm, ethernet_type_t type, u32 node_index) |
|
void | ethernet_register_l2_input (vlib_main_t *vm, u32 node_index) |
|
void | ethernet_register_l3_redirect (vlib_main_t *vm, u32 node_index) |
|
#define ethernet_error |
( |
|
n, |
|
|
|
c, |
|
|
|
s |
|
) |
| s, |
#define foreach_ethernet_input_next |
Value:_ (PUNT, "error-punt") \
_ (LLC, "llc-input")
Definition at line 47 of file node.c.
Enumerator |
---|
ETHERNET_INPUT_N_NEXT |
|
Definition at line 52 of file node.c.
Enumerator |
---|
ETHERNET_INPUT_VARIANT_ETHERNET |
|
ETHERNET_INPUT_VARIANT_ETHERNET_TYPE |
|
ETHERNET_INPUT_VARIANT_NOT_L2 |
|
Definition at line 79 of file node.c.
void ethernet_register_l3_redirect |
( |
vlib_main_t * |
vm, |
|
|
u32 |
node_index |
|
) |
| |
void ethernet_sw_interface_set_l2_mode |
( |
vnet_main_t * |
vnm, |
|
|
u32 |
sw_if_index, |
|
|
u32 |
l2 |
|
) |
| |
void ethernet_sw_interface_set_l2_mode_noport |
( |
vnet_main_t * |
vnm, |
|
|
u32 |
sw_if_index, |
|
|
u32 |
l2 |
|
) |
| |
static u8* format_ethernet_input_trace |
( |
u8 * |
s, |
|
|
va_list * |
va |
|
) |
| |
|
static |
char* ethernet_error_strings[] |
|
static |
Initial value:= {
#define ethernet_error(n,c,s)
}
bad routing header type(not 4)") sr_error (NO_MORE_SEGMENTS
#define ethernet_error(n, c, s)
Definition at line 990 of file node.c.
Initial value:= {
.name = "ethernet-input",
.vector_size =
sizeof (
u32),
.n_errors = ETHERNET_N_ERROR,
.next_nodes = {
#define _(s,n)
},
}
static u8 * format_ethernet_input_trace(u8 *s, va_list *va)
#define foreach_ethernet_input_next
static uword ethernet_input(vlib_main_t *vm, vlib_node_runtime_t *node, vlib_frame_t *from_frame)
u8 * format_ethernet_header_with_length(u8 *s, va_list *args)
static char * ethernet_error_strings[]
uword unformat_ethernet_header(unformat_input_t *input, va_list *args)
(constructor) VLIB_REGISTER_NODE (ethernet_input_node)
Definition at line 77 of file node.c.
Initial value:= {
.name = "ethernet-input-not-l2",
.vector_size =
sizeof (
u32),
.next_nodes = {
#define _(s,n)
},
}
static uword ethernet_input_not_l2(vlib_main_t *vm, vlib_node_runtime_t *node, vlib_frame_t *from_frame)
#define foreach_ethernet_input_next
(constructor) VLIB_REGISTER_NODE (ethernet_input_not_l2_node)
Definition at line 1040 of file node.c.
Initial value:= {
.name = "ethernet-input-type",
.vector_size =
sizeof (
u32),
.next_nodes = {
#define _(s,n)
},
}
#define foreach_ethernet_input_next
static uword ethernet_input_type(vlib_main_t *vm, vlib_node_runtime_t *node, vlib_frame_t *from_frame)
(constructor) VLIB_REGISTER_NODE (ethernet_input_type_node)
Definition at line 1021 of file node.c.