X-Git-Url: https://gerrit.fd.io/r/gitweb?a=blobdiff_plain;f=src%2Fplugins%2Fikev2%2Fikev2_priv.h;fp=src%2Fplugins%2Fikev2%2Fikev2_priv.h;h=f6f9989e4b2ce4bbacb42118ba6c1e9f57bb446d;hb=558607dc3a96232191f413b9bc894524ff85f2a1;hp=f8b0458db9c89c45dd3a4a7ffef36d7141ea7ed5;hpb=90690f1e8f39904990b4eeeb7851b248a9c908f3;p=vpp.git diff --git a/src/plugins/ikev2/ikev2_priv.h b/src/plugins/ikev2/ikev2_priv.h index f8b0458db9c..f6f9989e4b2 100644 --- a/src/plugins/ikev2/ikev2_priv.h +++ b/src/plugins/ikev2/ikev2_priv.h @@ -522,18 +522,19 @@ u8 *ikev2_calc_prfplus (ikev2_sa_transform_t * tr, u8 * key, u8 * seed, int len); v8 *ikev2_calc_integr (ikev2_sa_transform_t * tr, v8 * key, u8 * data, int len); -v8 *ikev2_decrypt_data (ikev2_main_per_thread_data_t * ptd, ikev2_sa_t * sa, - ikev2_sa_transform_t * tr_encr, u8 * data, int len); +int ikev2_decrypt_data (ikev2_main_per_thread_data_t * ptd, ikev2_sa_t * sa, + ikev2_sa_transform_t * tr_encr, u8 * data, int len, + u32 * out_len); int ikev2_encrypt_data (ikev2_main_per_thread_data_t * ptd, ikev2_sa_t * sa, ikev2_sa_transform_t * tr_encr, v8 * src, u8 * dst); int ikev2_encrypt_aead_data (ikev2_main_per_thread_data_t * ptd, ikev2_sa_t * sa, ikev2_sa_transform_t * tr_encr, v8 * src, u8 * dst, u8 * aad, u32 aad_len, u8 * tag); -u8 *ikev2_decrypt_aead_data (ikev2_main_per_thread_data_t * ptd, +int ikev2_decrypt_aead_data (ikev2_main_per_thread_data_t * ptd, ikev2_sa_t * sa, ikev2_sa_transform_t * tr_encr, u8 * data, int data_len, u8 * aad, u32 aad_len, - u8 * tag); + u8 * tag, u32 * out_len); void ikev2_generate_dh (ikev2_sa_t * sa, ikev2_sa_transform_t * t); void ikev2_complete_dh (ikev2_sa_t * sa, ikev2_sa_transform_t * t); int ikev2_verify_sign (EVP_PKEY * pkey, u8 * sigbuf, u8 * data); @@ -573,10 +574,13 @@ void ikev2_payload_add_ts (ikev2_payload_chain_t * c, ikev2_ts_t * ts, void ikev2_payload_add_delete (ikev2_payload_chain_t * c, ikev2_delete_t * d); void ikev2_payload_chain_add_padding (ikev2_payload_chain_t * c, int bs); void ikev2_parse_vendor_payload (ike_payload_header_t * ikep); -ikev2_sa_proposal_t *ikev2_parse_sa_payload (ike_payload_header_t * ikep); -ikev2_ts_t *ikev2_parse_ts_payload (ike_payload_header_t * ikep); -ikev2_delete_t *ikev2_parse_delete_payload (ike_payload_header_t * ikep); -ikev2_notify_t *ikev2_parse_notify_payload (ike_payload_header_t * ikep); +ikev2_sa_proposal_t *ikev2_parse_sa_payload (ike_payload_header_t * ikep, + u32 rlen); +ikev2_ts_t *ikev2_parse_ts_payload (ike_payload_header_t * ikep, u32 rlen); +ikev2_delete_t *ikev2_parse_delete_payload (ike_payload_header_t * ikep, + u32 rlen); +ikev2_notify_t *ikev2_parse_notify_payload (ike_payload_header_t * ikep, + u32 rlen); int ikev2_set_log_level (ikev2_log_level_t log_level); static_always_inline ikev2_main_per_thread_data_t *