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=7e40ed34a5e1a7bafa6b808058138f0f94d27fb4;hb=a7b963df2758d7c25de366db1999ca1024e12d30;hp=b018a6433e9a9076a3e42e51f1513df61f5e414f;hpb=8046fdc10b14fd161ee81d0a25cfa79793ef698b;p=vpp.git diff --git a/src/plugins/ikev2/ikev2_priv.h b/src/plugins/ikev2/ikev2_priv.h index b018a6433e9..7e40ed34a5e 100644 --- a/src/plugins/ikev2/ikev2_priv.h +++ b/src/plugins/ikev2/ikev2_priv.h @@ -521,8 +521,18 @@ 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_sa_t * sa, u8 * data, int len); -int ikev2_encrypt_data (ikev2_sa_t * sa, v8 * src, u8 * dst); +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_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, + ikev2_sa_t * sa, ikev2_sa_transform_t * tr_encr, + u8 * data, int data_len, u8 * aad, u32 aad_len, + u8 * tag); 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); @@ -567,6 +577,13 @@ 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); int ikev2_set_log_level (ikev2_log_level_t log_level); + +static_always_inline ikev2_main_per_thread_data_t * +ikev2_get_per_thread_data () +{ + u32 thread_index = vlib_get_thread_index (); + return vec_elt_at_index (ikev2_main.per_thread_data, thread_index); +} #endif /* __included_ikev2_priv_h__ */