![]() |
FD.io VPP
v21.06-3-gbb25fbf28
Vector Packet Processing
|
Pipe Interfaces. More...
Go to the source code of this file.
Data Structures | |
struct | pipe_main_t_ |
Various 'module' level variables. More... | |
struct | pipe_rx_trace_t_ |
struct | pipe_hw_walk_ctx_t_ |
Macros | |
#define | VNET_PIPE_TX_NEXT_ETHERNET_INPUT VNET_INTERFACE_TX_N_NEXT |
#define | foreach_pipe_rx_next _ (DROP, "error-drop") |
#define | PIPE_MAX_INSTANCE (16 * 1024) |
Typedefs | |
typedef struct pipe_main_t_ | pipe_main_t |
Various 'module' level variables. More... | |
typedef enum pipe_rx_next_t_ | pipe_rx_next_t |
typedef struct pipe_rx_trace_t_ | pipe_rx_trace_t |
typedef struct pipe_hw_walk_ctx_t_ | pipe_hw_walk_ctx_t |
Enumerations | |
enum | pipe_rx_next_t_ { PIPE_RX_N_NEXT } |
Variables | |
const static pipe_t | PIPE_INVALID |
static pipe_main_t | pipe_main |
vlib_node_registration_t | pipe_rx_node |
(constructor) VLIB_REGISTER_NODE (pipe_rx_node) More... | |
static vlib_cli_command_t | pipe_create_interface_command |
(constructor) VLIB_CLI_COMMAND (pipe_create_interface_command) More... | |
static vlib_cli_command_t | pipe_delete_interface_command |
(constructor) VLIB_CLI_COMMAND (pipe_delete_interface_command) More... | |
Pipe Interfaces.
A pipe interface, like the UNIX pipe, is a pair of vpp interfaces that are joined.
Definition in file pipe.c.
#define VNET_PIPE_TX_NEXT_ETHERNET_INPUT VNET_INTERFACE_TX_N_NEXT |
typedef struct pipe_hw_walk_ctx_t_ pipe_hw_walk_ctx_t |
typedef struct pipe_main_t_ pipe_main_t |
Various 'module' level variables.
typedef enum pipe_rx_next_t_ pipe_rx_next_t |
typedef struct pipe_rx_trace_t_ pipe_rx_trace_t |
enum pipe_rx_next_t_ |
|
static |
|
static |
|
static |
|
static |
|
static |
static_always_inline void pipe_determine_next_node | ( | ethernet_main_t * | em, |
u32 | is_l20, | ||
u32 | type0, | ||
vlib_buffer_t * | b0, | ||
pipe_rx_next_t * | next0 | ||
) |
|
static |
|
static |
static_always_inline uword pipe_rx | ( | vlib_main_t * | vm, |
vlib_node_runtime_t * | node, | ||
vlib_frame_t * | from_frame | ||
) |
|
static |
void pipe_walk | ( | pipe_cb_fn_t | fn, |
void * | ctx | ||
) |
uword unformat_pipe_interface | ( | unformat_input_t * | input, |
va_list * | args | ||
) |
int vnet_create_pipe_interface | ( | u8 | is_specified, |
u32 | user_instance, | ||
u32 * | parent_sw_if_index, | ||
u32 | pipe_sw_if_index[2] | ||
) |
Create a new pipe interface.
is_specified | Has the user speficied a desired instance number |
user_instance | The user's desired instnace |
parent_sw_index | OUT the created parent interface |
pipe_sw_if_index | OUT the ends of the pipe |
Definition at line 531 of file pipe.c.
int vnet_delete_pipe_interface | ( | u32 | sw_if_index | ) |
VNET_DEVICE_CLASS | ( | pipe_device_class | ) |
VNET_HW_INTERFACE_CLASS | ( | pipe_hw_interface_class | ) |
|
static |
(constructor) VLIB_CLI_COMMAND (pipe_create_interface_command)
|
static |
(constructor) VLIB_CLI_COMMAND (pipe_delete_interface_command)
|
static |
|
static |
vlib_node_registration_t pipe_rx_node |
(constructor) VLIB_REGISTER_NODE (pipe_rx_node)