FD.io VPP  v17.01-9-ge7dcee4
Vector Packet Processing
interface.c File Reference

Loopback Interfaces. More...

+ Include dependency graph for interface.c:

Go to the source code of this file.

Functions

u8ethernet_build_rewrite (vnet_main_t *vnm, u32 sw_if_index, vnet_link_t link_type, const void *dst_address)
 build a rewrite string to use for sending packets of type 'link_type' to 'dst_address' More...
 
void ethernet_update_adjacency (vnet_main_t *vnm, u32 sw_if_index, u32 ai)
 
static clib_error_tethernet_mac_change (vnet_hw_interface_t *hi, char *mac_address)
 
 VNET_HW_INTERFACE_CLASS (ethernet_hw_interface_class)
 
uword unformat_ethernet_interface (unformat_input_t *input, va_list *args)
 
clib_error_tethernet_register_interface (vnet_main_t *vnm, u32 dev_class_index, u32 dev_instance, u8 *address, u32 *hw_if_index_return, ethernet_flag_change_function_t flag_change)
 
void ethernet_delete_interface (vnet_main_t *vnm, u32 hw_if_index)
 
u32 ethernet_set_flags (vnet_main_t *vnm, u32 hw_if_index, u32 flags)
 
static uword simulated_ethernet_interface_tx (vlib_main_t *vm, vlib_node_runtime_t *node, vlib_frame_t *frame)
 
static u8format_simulated_ethernet_name (u8 *s, va_list *args)
 
static clib_error_tsimulated_ethernet_admin_up_down (vnet_main_t *vnm, u32 hw_if_index, u32 flags)
 
 VNET_DEVICE_CLASS (ethernet_simulated_device_class)
 
int vnet_create_loopback_interface (u32 *sw_if_indexp, u8 *mac_address)
 
static clib_error_tcreate_simulated_ethernet_interfaces (vlib_main_t *vm, unformat_input_t *input, vlib_cli_command_t *cmd)
 
ethernet_interface_tethernet_get_interface (ethernet_main_t *em, u32 hw_if_index)
 
int vnet_delete_loopback_interface (u32 sw_if_index)
 
int vnet_delete_sub_interface (u32 sw_if_index)
 
static clib_error_tdelete_simulated_ethernet_interfaces (vlib_main_t *vm, unformat_input_t *input, vlib_cli_command_t *cmd)
 
static clib_error_tdelete_sub_interface (vlib_main_t *vm, unformat_input_t *input, vlib_cli_command_t *cmd)
 

Variables

static vlib_cli_command_t create_simulated_ethernet_interface_command
 (constructor) VLIB_CLI_COMMAND (create_simulated_ethernet_interface_command) More...
 
static vlib_cli_command_t create_loopback_interface_command
 (constructor) VLIB_CLI_COMMAND (create_loopback_interface_command) More...
 
static vlib_cli_command_t delete_simulated_ethernet_interface_command
 (constructor) VLIB_CLI_COMMAND (delete_simulated_ethernet_interface_command) More...
 
static vlib_cli_command_t delete_loopback_interface_command
 (constructor) VLIB_CLI_COMMAND (delete_loopback_interface_command) More...
 
static vlib_cli_command_t delete_sub_interface_command
 (constructor) VLIB_CLI_COMMAND (delete_sub_interface_command) More...
 

Detailed Description

Loopback Interfaces.

This file contains code to manage loopback interfaces.

Definition in file interface.c.

Function Documentation

static clib_error_t* create_simulated_ethernet_interfaces ( vlib_main_t vm,
unformat_input_t input,
vlib_cli_command_t cmd 
)
static

Definition at line 496 of file interface.c.

+ Here is the call graph for this function:

static clib_error_t* delete_simulated_ethernet_interfaces ( vlib_main_t vm,
unformat_input_t input,
vlib_cli_command_t cmd 
)
static

Definition at line 617 of file interface.c.

+ Here is the call graph for this function:

static clib_error_t* delete_sub_interface ( vlib_main_t vm,
unformat_input_t input,
vlib_cli_command_t cmd 
)
static

Definition at line 646 of file interface.c.

+ Here is the call graph for this function:

u8* ethernet_build_rewrite ( vnet_main_t vnm,
u32  sw_if_index,
vnet_link_t  link_type,
const void *  dst_address 
)

build a rewrite string to use for sending packets of type 'link_type' to 'dst_address'

Definition at line 59 of file interface.c.

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

void ethernet_delete_interface ( vnet_main_t vnm,
u32  hw_if_index 
)

Definition at line 275 of file interface.c.

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

ethernet_interface_t* ethernet_get_interface ( ethernet_main_t em,
u32  hw_if_index 
)

Definition at line 563 of file interface.c.

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

static clib_error_t* ethernet_mac_change ( vnet_hw_interface_t hi,
char *  mac_address 
)
static

Definition at line 172 of file interface.c.

+ Here is the call graph for this function:

clib_error_t* ethernet_register_interface ( vnet_main_t vnm,
u32  dev_class_index,
u32  dev_instance,
u8 address,
u32 hw_if_index_return,
ethernet_flag_change_function_t  flag_change 
)

Definition at line 226 of file interface.c.

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

u32 ethernet_set_flags ( vnet_main_t vnm,
u32  hw_if_index,
u32  flags 
)

Definition at line 319 of file interface.c.

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

void ethernet_update_adjacency ( vnet_main_t vnm,
u32  sw_if_index,
u32  ai 
)

Definition at line 151 of file interface.c.

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

static u8* format_simulated_ethernet_name ( u8 s,
va_list *  args 
)
static

Definition at line 411 of file interface.c.

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

static clib_error_t* simulated_ethernet_admin_up_down ( vnet_main_t vnm,
u32  hw_if_index,
u32  flags 
)
static

Definition at line 418 of file interface.c.

+ Here is the call graph for this function:

static uword simulated_ethernet_interface_tx ( vlib_main_t vm,
vlib_node_runtime_t node,
vlib_frame_t frame 
)
static

Definition at line 337 of file interface.c.

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

uword unformat_ethernet_interface ( unformat_input_t input,
va_list *  args 
)

Definition at line 205 of file interface.c.

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

int vnet_create_loopback_interface ( u32 sw_if_indexp,
u8 mac_address 
)

Definition at line 437 of file interface.c.

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

int vnet_delete_loopback_interface ( u32  sw_if_index)

Definition at line 573 of file interface.c.

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

int vnet_delete_sub_interface ( u32  sw_if_index)

Definition at line 588 of file interface.c.

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

VNET_DEVICE_CLASS ( ethernet_simulated_device_class  )

+ Here is the caller graph for this function:

VNET_HW_INTERFACE_CLASS ( ethernet_hw_interface_class  )

+ Here is the caller graph for this function:

Variable Documentation

vlib_cli_command_t create_loopback_interface_command
static
Initial value:
= {
.path = "create loopback interface",
.short_help = "create loopback interface [mac <mac-addr>]",
}
static clib_error_t * create_simulated_ethernet_interfaces(vlib_main_t *vm, unformat_input_t *input, vlib_cli_command_t *cmd)
Definition: interface.c:496

(constructor) VLIB_CLI_COMMAND (create_loopback_interface_command)

Definition at line 555 of file interface.c.

vlib_cli_command_t create_simulated_ethernet_interface_command
static
Initial value:
= {
.path = "loopback create-interface",
.short_help = "loopback create-interface [mac <mac-addr>]",
}
static clib_error_t * create_simulated_ethernet_interfaces(vlib_main_t *vm, unformat_input_t *input, vlib_cli_command_t *cmd)
Definition: interface.c:496

(constructor) VLIB_CLI_COMMAND (create_simulated_ethernet_interface_command)

Definition at line 536 of file interface.c.

vlib_cli_command_t delete_loopback_interface_command
static
Initial value:
= {
.path = "delete loopback interface",
.short_help = "delete loopback interface intfc <interface>",
}
static clib_error_t * delete_simulated_ethernet_interfaces(vlib_main_t *vm, unformat_input_t *input, vlib_cli_command_t *cmd)
Definition: interface.c:617

(constructor) VLIB_CLI_COMMAND (delete_loopback_interface_command)

Definition at line 702 of file interface.c.

vlib_cli_command_t delete_simulated_ethernet_interface_command
static
Initial value:
= {
.path = "loopback delete-interface",
.short_help = "loopback delete-interface intfc <interface>",
}
static clib_error_t * delete_simulated_ethernet_interfaces(vlib_main_t *vm, unformat_input_t *input, vlib_cli_command_t *cmd)
Definition: interface.c:617

(constructor) VLIB_CLI_COMMAND (delete_simulated_ethernet_interface_command)

Definition at line 684 of file interface.c.

vlib_cli_command_t delete_sub_interface_command
static
Initial value:
= {
.path = "delete sub-interface",
.short_help = "delete sub-interface <interface>",
.function = delete_sub_interface,
}
static clib_error_t * delete_sub_interface(vlib_main_t *vm, unformat_input_t *input, vlib_cli_command_t *cmd)
Definition: interface.c:646

(constructor) VLIB_CLI_COMMAND (delete_sub_interface_command)

Definition at line 717 of file interface.c.