From 92de6b65be144c8108149c1a56327832edcd8ba6 Mon Sep 17 00:00:00 2001 From: MathiasRaoul Date: Thu, 9 Jan 2020 14:50:53 +0000 Subject: quic: quicly crypto offloading - Implement our own quic packet allocator to allocate more memory at the end of the packet to store crypto offloading related data - 1RTT packets offloading encryption/decryption using vnet crypto - Add cli to change max packet per key Type: feature Change-Id: I7557fd457d7ba492329d5d8ed192509cbd727f9c Signed-off-by: MathiasRaoul --- src/plugins/quic/quic_crypto.h | 18 ++++++++++++++++++ 1 file changed, 18 insertions(+) (limited to 'src/plugins/quic/quic_crypto.h') diff --git a/src/plugins/quic/quic_crypto.h b/src/plugins/quic/quic_crypto.h index ff74fac4086..930b31b2cb4 100644 --- a/src/plugins/quic/quic_crypto.h +++ b/src/plugins/quic/quic_crypto.h @@ -18,11 +18,29 @@ #include +struct quic_ctx_t; +struct quic_rx_packet_ctx_t; +struct quic_crypto_batch_ctx_t; + extern ptls_cipher_suite_t *quic_crypto_cipher_suites[]; int quic_encrypt_ticket_cb (ptls_encrypt_ticket_t * _self, ptls_t * tls, int is_encrypt, ptls_buffer_t * dst, ptls_iovec_t src); +void quic_crypto_decrypt_packet (quic_ctx_t * qctx, + quic_rx_packet_ctx_t * pctx); +void quic_crypto_batch_tx_packets (quic_crypto_batch_ctx_t * batch_ctx); +void quic_crypto_batch_rx_packets (quic_crypto_batch_ctx_t * batch_ctx); +void quic_crypto_finalize_send_packet (quicly_datagram_t * packet); + +void +quic_crypto_finalize_send_packet_cb (struct st_quicly_crypto_engine_t *engine, + quicly_conn_t * conn, + ptls_cipher_context_t * hp, + ptls_aead_context_t * aead, + quicly_datagram_t * packet, + size_t first_byte_at, + size_t payload_from, int coalesced); #endif /* __included_vpp_quic_crypto_h__ */ -- cgit 1.2.3-korg