FD.io VPP  v19.01.3-6-g70449b9b9
Vector Packet Processing
esp.h File Reference
+ Include dependency graph for esp.h:
+ This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Data Structures

struct  esp_header_t
 
struct  esp_footer_t
 

Macros

#define ESP_WINDOW_SIZE   (64)
 
#define ESP_SEQ_MAX   (4294967295UL)
 

Functions

typedef CLIB_PACKED (struct { ip4_header_t ip4;esp_header_t esp;}) ip4_and_esp_header_t
 
typedef CLIB_PACKED (struct { ip4_header_t ip4;udp_header_t udp;esp_header_t esp;}) ip4_and_udp_and_esp_header_t
 
typedef CLIB_PACKED (struct { ip6_header_t ip6;esp_header_t esp;}) ip6_and_esp_header_t
 
u8format_esp_header (u8 *s, va_list *args)
 
static int esp_replay_check (ipsec_sa_t *sa, u32 seq)
 
static int esp_replay_check_esn (ipsec_sa_t *sa, u32 seq)
 
static void esp_replay_advance (ipsec_sa_t *sa, u32 seq)
 
static void esp_replay_advance_esn (ipsec_sa_t *sa, u32 seq)
 
static int esp_seq_advance (ipsec_sa_t *sa)
 
static void ipsec_proto_init ()
 
static unsigned int hmac_calc (ipsec_integ_alg_t alg, u8 *key, int key_len, u8 *data, int data_len, u8 *signature, u8 use_esn, u32 seq_hi)
 

Macro Definition Documentation

◆ ESP_SEQ_MAX

#define ESP_SEQ_MAX   (4294967295UL)

Definition at line 57 of file esp.h.

◆ ESP_WINDOW_SIZE

#define ESP_WINDOW_SIZE   (64)

Definition at line 56 of file esp.h.

Function Documentation

◆ CLIB_PACKED() [1/3]

typedef CLIB_PACKED ( struct { ip4_header_t ip4;esp_header_t esp;}  )

◆ CLIB_PACKED() [2/3]

typedef CLIB_PACKED ( struct { ip4_header_t ip4;udp_header_t udp;esp_header_t esp;}  )

◆ CLIB_PACKED() [3/3]

typedef CLIB_PACKED ( struct { ip6_header_t ip6;esp_header_t esp;}  )

◆ esp_replay_advance()

static void esp_replay_advance ( ipsec_sa_t sa,
u32  seq 
)
inlinestatic

Definition at line 124 of file esp.h.

+ Here is the caller graph for this function:

◆ esp_replay_advance_esn()

static void esp_replay_advance_esn ( ipsec_sa_t sa,
u32  seq 
)
inlinestatic

Definition at line 145 of file esp.h.

+ Here is the caller graph for this function:

◆ esp_replay_check()

static int esp_replay_check ( ipsec_sa_t sa,
u32  seq 
)
inlinestatic

Definition at line 62 of file esp.h.

+ Here is the caller graph for this function:

◆ esp_replay_check_esn()

static int esp_replay_check_esn ( ipsec_sa_t sa,
u32  seq 
)
inlinestatic

Definition at line 80 of file esp.h.

+ Here is the caller graph for this function:

◆ esp_seq_advance()

static int esp_seq_advance ( ipsec_sa_t sa)
inlinestatic

Definition at line 182 of file esp.h.

+ Here is the caller graph for this function:

◆ format_esp_header()

u8* format_esp_header ( u8 s,
va_list *  args 
)

Definition at line 23 of file esp_format.c.

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

◆ hmac_calc()

static unsigned int hmac_calc ( ipsec_integ_alg_t  alg,
u8 key,
int  key_len,
u8 data,
int  data_len,
u8 signature,
u8  use_esn,
u32  seq_hi 
)
inlinestatic

Definition at line 280 of file esp.h.

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

◆ ipsec_proto_init()

static void ipsec_proto_init ( )
inlinestatic

Definition at line 206 of file esp.h.

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