FD.io VPP  v19.01.1-17-ge106252
Vector Packet Processing
esp_decrypt.c File Reference
+ Include dependency graph for esp_decrypt.c:

Go to the source code of this file.

Data Structures

struct  esp_decrypt_trace_t
 

Macros

#define foreach_esp_decrypt_next
 
#define foreach_esp_decrypt_error
 
#define foreach_esp_decrypt_post_error   _(PKTS, "ESP post pkts")
 

Enumerations

enum  esp_decrypt_next_t { ESP_DECRYPT_N_NEXT, ESP_DECRYPT_N_NEXT }
 
enum  esp_decrypt_error_t { ESP_DECRYPT_N_ERROR, ESP_DECRYPT_N_ERROR }
 
enum  esp_decrypt_post_error_t { ESP_DECRYPT_POST_N_ERROR }
 

Functions

static u8format_esp_decrypt_trace (u8 *s, va_list *args)
 
static uword dpdk_esp_decrypt_inline (vlib_main_t *vm, vlib_node_runtime_t *node, vlib_frame_t *from_frame, int is_ip6)
 
VLIB_NODE_FN() dpdk_esp4_decrypt_node (vlib_main_t *vm, vlib_node_runtime_t *node, vlib_frame_t *from_frame)
 
VLIB_NODE_FN() dpdk_esp6_decrypt_node (vlib_main_t *vm, vlib_node_runtime_t *node, vlib_frame_t *from_frame)
 
static u8format_esp_decrypt_post_trace (u8 *s, va_list *args)
 
static uword dpdk_esp_decrypt_post_inline (vlib_main_t *vm, vlib_node_runtime_t *node, vlib_frame_t *from_frame, int is_ip6)
 
VLIB_NODE_FN() dpdk_esp4_decrypt_post_node (vlib_main_t *vm, vlib_node_runtime_t *node, vlib_frame_t *from_frame)
 
VLIB_NODE_FN() dpdk_esp6_decrypt_post_node (vlib_main_t *vm, vlib_node_runtime_t *node, vlib_frame_t *from_frame)
 

Variables

static char * esp_decrypt_error_strings []
 
vlib_node_registration_t dpdk_esp4_decrypt_node
 (constructor) VLIB_REGISTER_NODE (dpdk_esp4_decrypt_node) More...
 
vlib_node_registration_t dpdk_esp6_decrypt_node
 (constructor) VLIB_REGISTER_NODE (dpdk_esp6_decrypt_node) More...
 
static char * esp_decrypt_post_error_strings []
 
vlib_node_registration_t dpdk_esp4_decrypt_post_node
 (constructor) VLIB_REGISTER_NODE (dpdk_esp4_decrypt_post_node) More...
 
vlib_node_registration_t dpdk_esp6_decrypt_post_node
 (constructor) VLIB_REGISTER_NODE (dpdk_esp6_decrypt_post_node) More...
 

Macro Definition Documentation

#define foreach_esp_decrypt_error
Value:
_(RX_PKTS, "ESP pkts received") \
_(DECRYPTION_FAILED, "ESP decryption failed") \
_(REPLAY, "SA replayed packet") \
_(NOT_IP, "Not IP packet (dropped)") \
_(ENQ_FAIL, "Enqueue failed (buffer full)") \
_(DISCARD, "Not enough crypto operations, discarding frame") \
_(BAD_LEN, "Invalid ciphertext length") \
_(SESSION, "Failed to get crypto session") \
_(NOSUP, "Cipher/Auth not supported")

Definition at line 41 of file esp_decrypt.c.

#define foreach_esp_decrypt_next
Value:
_(DROP, "error-drop") \
_(IP4_INPUT, "ip4-input-no-checksum") \
_(IP6_INPUT, "ip6-input")
DROP
Definition: error.def:41

Definition at line 28 of file esp_decrypt.c.

#define foreach_esp_decrypt_post_error   _(PKTS, "ESP post pkts")

Definition at line 452 of file esp_decrypt.c.

Enumeration Type Documentation

Enumerator
ESP_DECRYPT_N_ERROR 
ESP_DECRYPT_N_ERROR 

Definition at line 53 of file esp_decrypt.c.

Enumerator
ESP_DECRYPT_N_NEXT 
ESP_DECRYPT_N_NEXT 

Definition at line 34 of file esp_decrypt.c.

Enumerator
ESP_DECRYPT_POST_N_ERROR 

Definition at line 455 of file esp_decrypt.c.

Function Documentation

VLIB_NODE_FN() dpdk_esp4_decrypt_node ( vlib_main_t vm,
vlib_node_runtime_t node,
vlib_frame_t from_frame 
)

Definition at line 396 of file esp_decrypt.c.

+ Here is the call graph for this function:

VLIB_NODE_FN() dpdk_esp4_decrypt_post_node ( vlib_main_t vm,
vlib_node_runtime_t node,
vlib_frame_t from_frame 
)

Definition at line 694 of file esp_decrypt.c.

+ Here is the call graph for this function:

VLIB_NODE_FN() dpdk_esp6_decrypt_node ( vlib_main_t vm,
vlib_node_runtime_t node,
vlib_frame_t from_frame 
)

Definition at line 422 of file esp_decrypt.c.

+ Here is the call graph for this function:

VLIB_NODE_FN() dpdk_esp6_decrypt_post_node ( vlib_main_t vm,
vlib_node_runtime_t node,
vlib_frame_t from_frame 
)

Definition at line 720 of file esp_decrypt.c.

+ Here is the call graph for this function:

static uword dpdk_esp_decrypt_inline ( vlib_main_t vm,
vlib_node_runtime_t node,
vlib_frame_t from_frame,
int  is_ip6 
)
inlinestatic

Definition at line 95 of file esp_decrypt.c.

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

static uword dpdk_esp_decrypt_post_inline ( vlib_main_t vm,
vlib_node_runtime_t node,
vlib_frame_t from_frame,
int  is_ip6 
)
inlinestatic

Definition at line 496 of file esp_decrypt.c.

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

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

Definition at line 473 of file esp_decrypt.c.

+ Here is the call graph for this function:

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

Definition at line 79 of file esp_decrypt.c.

+ Here is the call graph for this function:

Variable Documentation

vlib_node_registration_t dpdk_esp4_decrypt_node
Initial value:
= {
.name = "dpdk-esp4-decrypt",
.vector_size = sizeof (u32),
.format_trace = format_esp_decrypt_trace,
.error_strings = esp_decrypt_error_strings,
.n_next_nodes = ESP_DECRYPT_N_NEXT,
.next_nodes = {
#define _(s,n)
},
}
static char * esp_decrypt_error_strings[]
Definition: esp_decrypt.c:61
#define foreach_esp_decrypt_next
Definition: esp_decrypt.c:28
unsigned int u32
Definition: types.h:88
#define ARRAY_LEN(x)
Definition: clib.h:62
static u8 * format_esp_decrypt_trace(u8 *s, va_list *args)
Definition: esp_decrypt.c:79

(constructor) VLIB_REGISTER_NODE (dpdk_esp4_decrypt_node)

Definition at line 404 of file esp_decrypt.c.

vlib_node_registration_t dpdk_esp4_decrypt_post_node
Initial value:
= {
.name = "dpdk-esp4-decrypt-post",
.vector_size = sizeof (u32),
.n_next_nodes = ESP_DECRYPT_N_NEXT,
.next_nodes = {
#define _(s,n)
},
}
static char * esp_decrypt_post_error_strings[]
Definition: esp_decrypt.c:463
static u8 * format_esp_decrypt_post_trace(u8 *s, va_list *args)
Definition: esp_decrypt.c:473
#define foreach_esp_decrypt_next
Definition: esp_decrypt.c:28
unsigned int u32
Definition: types.h:88
#define ARRAY_LEN(x)
Definition: clib.h:62

(constructor) VLIB_REGISTER_NODE (dpdk_esp4_decrypt_post_node)

Definition at line 702 of file esp_decrypt.c.

vlib_node_registration_t dpdk_esp6_decrypt_node
Initial value:
= {
.name = "dpdk-esp6-decrypt",
.vector_size = sizeof (u32),
.format_trace = format_esp_decrypt_trace,
.error_strings = esp_decrypt_error_strings,
.n_next_nodes = ESP_DECRYPT_N_NEXT,
.next_nodes = {
#define _(s,n)
},
}
static char * esp_decrypt_error_strings[]
Definition: esp_decrypt.c:61
#define foreach_esp_decrypt_next
Definition: esp_decrypt.c:28
unsigned int u32
Definition: types.h:88
#define ARRAY_LEN(x)
Definition: clib.h:62
static u8 * format_esp_decrypt_trace(u8 *s, va_list *args)
Definition: esp_decrypt.c:79

(constructor) VLIB_REGISTER_NODE (dpdk_esp6_decrypt_node)

Definition at line 430 of file esp_decrypt.c.

vlib_node_registration_t dpdk_esp6_decrypt_post_node
Initial value:
= {
.name = "dpdk-esp6-decrypt-post",
.vector_size = sizeof (u32),
.n_next_nodes = ESP_DECRYPT_N_NEXT,
.next_nodes = {
#define _(s,n)
},
}
static char * esp_decrypt_post_error_strings[]
Definition: esp_decrypt.c:463
static u8 * format_esp_decrypt_post_trace(u8 *s, va_list *args)
Definition: esp_decrypt.c:473
#define foreach_esp_decrypt_next
Definition: esp_decrypt.c:28
unsigned int u32
Definition: types.h:88
#define ARRAY_LEN(x)
Definition: clib.h:62

(constructor) VLIB_REGISTER_NODE (dpdk_esp6_decrypt_post_node)

Definition at line 728 of file esp_decrypt.c.

char* esp_decrypt_error_strings[]
static
Initial value:
= {
#define _(sym,string)
}
#define foreach_esp_decrypt_error
Definition: esp_decrypt.c:41

Definition at line 61 of file esp_decrypt.c.

char* esp_decrypt_post_error_strings[]
static
Initial value:
= {
#define _(sym,string)
}
#define foreach_esp_decrypt_post_error
Definition: esp_decrypt.c:452

Definition at line 463 of file esp_decrypt.c.