FD.io VPP  v20.01-48-g3e0dafb74
Vector Packet Processing
ikev2_payload.c File Reference
+ Include dependency graph for ikev2_payload.c:

Go to the source code of this file.

Functions

typedef CLIB_PACKED (struct { u8 nextpayload;u8 flags;u16 length;u8 protocol_id;u8 spi_size;u16 msg_type;u8 payload[0];})
 
typedef CLIB_PACKED (struct { u8 nextpayload;u8 flags;u16 length;u8 num_ts;u8 reserved[3];ikev2_ts_payload_entry_t ts[0];})
 
typedef CLIB_PACKED (struct { u8 last_or_more;u8 reserved;u16 transform_len;u8 transform_type;u8 reserved2;u16 transform_id;u8 attributes[0];})
 
static ike_payload_header_t * ikev2_payload_add_hdr (ikev2_payload_chain_t *c, u8 payload_type, int len)
 
static void ikev2_payload_add_data (ikev2_payload_chain_t *c, u8 *data)
 
void ikev2_payload_add_notify (ikev2_payload_chain_t *c, u16 msg_type, u8 *data)
 
void ikev2_payload_add_notify_2 (ikev2_payload_chain_t *c, u16 msg_type, u8 *data, ikev2_notify_t *notify)
 
void ikev2_payload_add_sa (ikev2_payload_chain_t *c, ikev2_sa_proposal_t *proposals)
 
void ikev2_payload_add_ke (ikev2_payload_chain_t *c, u16 dh_group, u8 *dh_data)
 
void ikev2_payload_add_nonce (ikev2_payload_chain_t *c, u8 *nonce)
 
void ikev2_payload_add_id (ikev2_payload_chain_t *c, ikev2_id_t *id, u8 type)
 
void ikev2_payload_add_delete (ikev2_payload_chain_t *c, ikev2_delete_t *d)
 
void ikev2_payload_add_auth (ikev2_payload_chain_t *c, ikev2_auth_t *auth)
 
void ikev2_payload_add_ts (ikev2_payload_chain_t *c, ikev2_ts_t *ts, u8 type)
 
void ikev2_payload_chain_add_padding (ikev2_payload_chain_t *c, int bs)
 
ikev2_sa_proposal_tikev2_parse_sa_payload (ike_payload_header_t *ikep)
 
ikev2_ts_tikev2_parse_ts_payload (ike_payload_header_t *ikep)
 
ikev2_notify_tikev2_parse_notify_payload (ike_payload_header_t *ikep)
 
void ikev2_parse_vendor_payload (ike_payload_header_t *ikep)
 
ikev2_delete_tikev2_parse_delete_payload (ike_payload_header_t *ikep)
 

Variables

 ikev2_ts_payload_entry_t
 
 ike_sa_proposal_data_t
 
 ike_delete_payload_header_t
 

Function Documentation

◆ CLIB_PACKED() [1/3]

typedef CLIB_PACKED ( struct { u8 nextpayload;u8 flags;u16 length;u8 protocol_id;u8 spi_size;u16 msg_type;u8 payload[0];}  )

Definition at line 28 of file ikev2_payload.c.

+ Here is the caller graph for this function:

◆ CLIB_PACKED() [2/3]

typedef CLIB_PACKED ( struct { u8 nextpayload;u8 flags;u16 length;u8 num_ts;u8 reserved[3];ikev2_ts_payload_entry_t ts[0];}  )

Definition at line 52 of file ikev2_payload.c.

+ Here is the call graph for this function:

◆ CLIB_PACKED() [3/3]

typedef CLIB_PACKED ( struct { u8 last_or_more;u8 reserved;u16 transform_len;u8 transform_type;u8 reserved2;u16 transform_id;u8 attributes[0];}  )

Definition at line 75 of file ikev2_payload.c.

+ Here is the call graph for this function:

◆ ikev2_parse_delete_payload()

ikev2_delete_t* ikev2_parse_delete_payload ( ike_payload_header_t *  ikep)

Definition at line 512 of file ikev2_payload.c.

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

◆ ikev2_parse_notify_payload()

ikev2_notify_t* ikev2_parse_notify_payload ( ike_payload_header_t *  ikep)

Definition at line 453 of file ikev2_payload.c.

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

◆ ikev2_parse_sa_payload()

ikev2_sa_proposal_t* ikev2_parse_sa_payload ( ike_payload_header_t *  ikep)

Definition at line 342 of file ikev2_payload.c.

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

◆ ikev2_parse_ts_payload()

ikev2_ts_t* ikev2_parse_ts_payload ( ike_payload_header_t *  ikep)

Definition at line 427 of file ikev2_payload.c.

+ Here is the caller graph for this function:

◆ ikev2_parse_vendor_payload()

void ikev2_parse_vendor_payload ( ike_payload_header_t *  ikep)

Definition at line 494 of file ikev2_payload.c.

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

◆ ikev2_payload_add_auth()

void ikev2_payload_add_auth ( ikev2_payload_chain_t c,
ikev2_auth_t auth 
)

Definition at line 289 of file ikev2_payload.c.

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

◆ ikev2_payload_add_data()

static void ikev2_payload_add_data ( ikev2_payload_chain_t c,
u8 data 
)
static

Definition at line 121 of file ikev2_payload.c.

+ Here is the caller graph for this function:

◆ ikev2_payload_add_delete()

void ikev2_payload_add_delete ( ikev2_payload_chain_t c,
ikev2_delete_t d 
)

Definition at line 258 of file ikev2_payload.c.

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

◆ ikev2_payload_add_hdr()

static ike_payload_header_t* ikev2_payload_add_hdr ( ikev2_payload_chain_t c,
u8  payload_type,
int  len 
)
static

Definition at line 99 of file ikev2_payload.c.

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

◆ ikev2_payload_add_id()

void ikev2_payload_add_id ( ikev2_payload_chain_t c,
ikev2_id_t id,
u8  type 
)

Definition at line 246 of file ikev2_payload.c.

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

◆ ikev2_payload_add_ke()

void ikev2_payload_add_ke ( ikev2_payload_chain_t c,
u16  dh_group,
u8 dh_data 
)

Definition at line 227 of file ikev2_payload.c.

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

◆ ikev2_payload_add_nonce()

void ikev2_payload_add_nonce ( ikev2_payload_chain_t c,
u8 nonce 
)

Definition at line 238 of file ikev2_payload.c.

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

◆ ikev2_payload_add_notify()

void ikev2_payload_add_notify ( ikev2_payload_chain_t c,
u16  msg_type,
u8 data 
)

Definition at line 133 of file ikev2_payload.c.

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

◆ ikev2_payload_add_notify_2()

void ikev2_payload_add_notify_2 ( ikev2_payload_chain_t c,
u16  msg_type,
u8 data,
ikev2_notify_t notify 
)

Definition at line 139 of file ikev2_payload.c.

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

◆ ikev2_payload_add_sa()

void ikev2_payload_add_sa ( ikev2_payload_chain_t c,
ikev2_sa_proposal_t proposals 
)

Definition at line 161 of file ikev2_payload.c.

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

◆ ikev2_payload_add_ts()

void ikev2_payload_add_ts ( ikev2_payload_chain_t c,
ikev2_ts_t ts,
u8  type 
)

Definition at line 302 of file ikev2_payload.c.

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

◆ ikev2_payload_chain_add_padding()

void ikev2_payload_chain_add_padding ( ikev2_payload_chain_t c,
int  bs 
)

Definition at line 333 of file ikev2_payload.c.

+ Here is the caller graph for this function:

Variable Documentation

◆ ike_delete_payload_header_t

ike_delete_payload_header_t

Definition at line 95 of file ikev2_payload.c.

◆ ike_sa_proposal_data_t

ike_sa_proposal_data_t

Definition at line 71 of file ikev2_payload.c.

◆ ikev2_ts_payload_entry_t

ikev2_ts_payload_entry_t

Definition at line 48 of file ikev2_payload.c.