FD.io VPP  v19.04.4-rc0-5-ge88582fac
Vector Packet Processing
ipsec_if.c File Reference
+ Include dependency graph for ipsec_if.c:

Go to the source code of this file.

Macros

#define foreach_ipsec_if_tx_error   _(TX, "good packets transmitted")
 

Functions

void vl_api_rpc_call_main_thread (void *fp, u8 *data, u32 data_length)
 
static u8format_ipsec_name (u8 *s, va_list *args)
 
static void ipsec_if_tunnel_stack (adj_index_t ai)
 
static adj_walk_rc_t ipsec_if_adj_walk_cb (adj_index_t ai, void *ctx)
 Call back when restacking all adjacencies on a GRE interface. More...
 
static void ipsec_if_tunnel_restack (ipsec_tunnel_if_t *it)
 
static clib_error_tipsec_admin_up_down_function (vnet_main_t *vnm, u32 hw_if_index, u32 flags)
 
static u8ipsec_if_build_rewrite (vnet_main_t *vnm, u32 sw_if_index, vnet_link_t link_type, const void *dst_address)
 
static void ipsec_if_update_adj (vnet_main_t *vnm, u32 sw_if_index, adj_index_t ai)
 
 VNET_DEVICE_CLASS (ipsec_device_class)
 
 VNET_HW_INTERFACE_CLASS (ipsec_hw_class)
 
static int ipsec_add_del_tunnel_if_rpc_callback (ipsec_add_del_tunnel_args_t *a)
 
int ipsec_add_del_tunnel_if (ipsec_add_del_tunnel_args_t *args)
 
static u32 ipsec_tun_mk_input_sa_id (u32 ti)
 
static u32 ipsec_tun_mk_output_sa_id (u32 ti)
 
static void ipsec_tunnel_feature_set (ipsec_main_t *im, ipsec_tunnel_if_t *t, u8 enable)
 
int ipsec_add_del_tunnel_if_internal (vnet_main_t *vnm, ipsec_add_del_tunnel_args_t *args, u32 *sw_if_index)
 
int ipsec_add_del_ipsec_gre_tunnel (vnet_main_t *vnm, const ipsec_gre_tunnel_add_del_args_t *args)
 
int ipsec_set_interface_key (vnet_main_t *vnm, u32 hw_if_index, ipsec_if_set_key_type_t type, u8 alg, u8 *key)
 
int ipsec_set_interface_sa (vnet_main_t *vnm, u32 hw_if_index, u32 sa_id, u8 is_outbound)
 
clib_error_tipsec_tunnel_if_init (vlib_main_t *vm)
 

Macro Definition Documentation

◆ foreach_ipsec_if_tx_error

#define foreach_ipsec_if_tx_error   _(TX, "good packets transmitted")

Definition at line 41 of file ipsec_if.c.

Function Documentation

◆ format_ipsec_name()

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

Definition at line 31 of file ipsec_if.c.

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ ipsec_add_del_ipsec_gre_tunnel()

int ipsec_add_del_ipsec_gre_tunnel ( vnet_main_t vnm,
const ipsec_gre_tunnel_add_del_args_t args 
)

Definition at line 437 of file ipsec_if.c.

+ Here is the call graph for this function:

◆ ipsec_add_del_tunnel_if()

int ipsec_add_del_tunnel_if ( ipsec_add_del_tunnel_args_t args)

Definition at line 214 of file ipsec_if.c.

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ ipsec_add_del_tunnel_if_internal()

int ipsec_add_del_tunnel_if_internal ( vnet_main_t vnm,
ipsec_add_del_tunnel_args_t args,
u32 sw_if_index 
)

Definition at line 256 of file ipsec_if.c.

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ ipsec_add_del_tunnel_if_rpc_callback()

static int ipsec_add_del_tunnel_if_rpc_callback ( ipsec_add_del_tunnel_args_t a)
static

Definition at line 205 of file ipsec_if.c.

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ ipsec_admin_up_down_function()

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

Definition at line 112 of file ipsec_if.c.

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ ipsec_if_adj_walk_cb()

static adj_walk_rc_t ipsec_if_adj_walk_cb ( adj_index_t  ai,
void *  ctx 
)
static

Call back when restacking all adjacencies on a GRE interface.

Definition at line 90 of file ipsec_if.c.

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ ipsec_if_build_rewrite()

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

Definition at line 168 of file ipsec_if.c.

+ Here is the caller graph for this function:

◆ ipsec_if_tunnel_restack()

static void ipsec_if_tunnel_restack ( ipsec_tunnel_if_t it)
static

Definition at line 98 of file ipsec_if.c.

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ ipsec_if_tunnel_stack()

static void ipsec_if_tunnel_stack ( adj_index_t  ai)
static

Definition at line 45 of file ipsec_if.c.

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ ipsec_if_update_adj()

static void ipsec_if_update_adj ( vnet_main_t vnm,
u32  sw_if_index,
adj_index_t  ai 
)
static

Definition at line 176 of file ipsec_if.c.

+ Here is the call graph for this function:

◆ ipsec_set_interface_key()

int ipsec_set_interface_key ( vnet_main_t vnm,
u32  hw_if_index,
ipsec_if_set_key_type_t  type,
u8  alg,
u8 key 
)

Definition at line 517 of file ipsec_if.c.

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ ipsec_set_interface_sa()

int ipsec_set_interface_sa ( vnet_main_t vnm,
u32  hw_if_index,
u32  sa_id,
u8  is_outbound 
)

Definition at line 563 of file ipsec_if.c.

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ ipsec_tun_mk_input_sa_id()

static u32 ipsec_tun_mk_input_sa_id ( u32  ti)
static

Definition at line 222 of file ipsec_if.c.

+ Here is the caller graph for this function:

◆ ipsec_tun_mk_output_sa_id()

static u32 ipsec_tun_mk_output_sa_id ( u32  ti)
static

Definition at line 228 of file ipsec_if.c.

+ Here is the caller graph for this function:

◆ ipsec_tunnel_feature_set()

static void ipsec_tunnel_feature_set ( ipsec_main_t im,
ipsec_tunnel_if_t t,
u8  enable 
)
static

Definition at line 234 of file ipsec_if.c.

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ ipsec_tunnel_if_init()

clib_error_t* ipsec_tunnel_if_init ( vlib_main_t vm)

Definition at line 680 of file ipsec_if.c.

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ vl_api_rpc_call_main_thread()

void vl_api_rpc_call_main_thread ( void *  fp,
u8 data,
u32  data_length 
)

Definition at line 623 of file vlib_api.c.

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ VNET_DEVICE_CLASS()

VNET_DEVICE_CLASS ( ipsec_device_class  )
+ Here is the caller graph for this function:

◆ VNET_HW_INTERFACE_CLASS()

VNET_HW_INTERFACE_CLASS ( ipsec_hw_class  )
+ Here is the caller graph for this function: