mirror of
http://git.haproxy.org/git/haproxy.git/
synced 2025-04-09 10:47:34 +00:00
REORG: quic: Move CRYPTO data buffer defintions to QUIC TLS module
Move quic_crypto_buf struct definition from quic_conn-t.h to quic_tls-t.h. Also move its pool definition/declaration to quic_tls-t.h/quic_tls.c.
This commit is contained in:
parent
5f9bd6bbce
commit
ae885b9b68
@ -195,8 +195,6 @@ enum quic_pkt_type {
|
||||
/* Size of the QUIC RX buffer for the connections */
|
||||
#define QUIC_CONN_RX_BUFSZ (1UL << 16)
|
||||
|
||||
extern struct pool_head *pool_head_quic_crypto_buf;
|
||||
|
||||
struct quic_version {
|
||||
uint32_t num;
|
||||
const unsigned char *initial_salt;
|
||||
@ -234,23 +232,9 @@ extern const struct quic_version *preferred_version;
|
||||
/* The QUIC packet numbers are 62-bits integers */
|
||||
#define QUIC_MAX_PACKET_NUM ((1ULL << 62) - 1)
|
||||
|
||||
#define QUIC_CRYPTO_BUF_SHIFT 10
|
||||
#define QUIC_CRYPTO_BUF_MASK ((1UL << QUIC_CRYPTO_BUF_SHIFT) - 1)
|
||||
/* The maximum allowed size of CRYPTO data buffer provided by the TLS stack. */
|
||||
#define QUIC_CRYPTO_BUF_SZ (1UL << QUIC_CRYPTO_BUF_SHIFT) /* 1 KB */
|
||||
|
||||
/* The maximum number of bytes of CRYPTO data in flight during handshakes. */
|
||||
#define QUIC_CRYPTO_IN_FLIGHT_MAX 4096
|
||||
|
||||
/*
|
||||
* CRYPTO buffer struct.
|
||||
* Such buffers are used to send CRYPTO data.
|
||||
*/
|
||||
struct quic_crypto_buf {
|
||||
unsigned char data[QUIC_CRYPTO_BUF_SZ];
|
||||
size_t sz;
|
||||
};
|
||||
|
||||
/* Crypto data stream (one by encryption level) */
|
||||
struct quic_cstream {
|
||||
struct {
|
||||
|
@ -203,6 +203,22 @@ struct quic_tls_ctx {
|
||||
unsigned char flags;
|
||||
};
|
||||
|
||||
#define QUIC_CRYPTO_BUF_SHIFT 10
|
||||
#define QUIC_CRYPTO_BUF_MASK ((1UL << QUIC_CRYPTO_BUF_SHIFT) - 1)
|
||||
/* The maximum allowed size of CRYPTO data buffer provided by the TLS stack. */
|
||||
#define QUIC_CRYPTO_BUF_SZ (1UL << QUIC_CRYPTO_BUF_SHIFT) /* 1 KB */
|
||||
|
||||
extern struct pool_head *pool_head_quic_crypto_buf;
|
||||
|
||||
/*
|
||||
* CRYPTO buffer struct.
|
||||
* Such buffers are used to send CRYPTO data.
|
||||
*/
|
||||
struct quic_crypto_buf {
|
||||
unsigned char data[QUIC_CRYPTO_BUF_SZ];
|
||||
size_t sz;
|
||||
};
|
||||
|
||||
struct quic_enc_level {
|
||||
struct list list;
|
||||
/* Attach point to enqueue this encryption level during retransmissions */
|
||||
|
@ -137,7 +137,6 @@ DECLARE_STATIC_POOL(pool_head_quic_cc_conn, "quic_cc_conn", sizeof(struct quic_c
|
||||
DECLARE_STATIC_POOL(pool_head_quic_cids, "quic_cids", sizeof(struct eb_root));
|
||||
DECLARE_POOL(pool_head_quic_connection_id,
|
||||
"quic_connection_id", sizeof(struct quic_connection_id));
|
||||
DECLARE_POOL(pool_head_quic_crypto_buf, "quic_crypto_buf", sizeof(struct quic_crypto_buf));
|
||||
DECLARE_STATIC_POOL(pool_head_quic_cstream, "quic_cstream", sizeof(struct quic_cstream));
|
||||
|
||||
struct task *quic_conn_app_io_cb(struct task *t, void *context, unsigned int state);
|
||||
|
@ -20,6 +20,8 @@ DECLARE_POOL(pool_head_quic_tls_secret, "quic_tls_secret", QUIC_TLS_SECRET_LEN);
|
||||
DECLARE_POOL(pool_head_quic_tls_iv, "quic_tls_iv", QUIC_TLS_IV_LEN);
|
||||
DECLARE_POOL(pool_head_quic_tls_key, "quic_tls_key", QUIC_TLS_KEY_LEN);
|
||||
|
||||
DECLARE_POOL(pool_head_quic_crypto_buf, "quic_crypto_buf", sizeof(struct quic_crypto_buf));
|
||||
|
||||
/* Initial salt depending on QUIC version to derive client/server initial secrets.
|
||||
* This one is for draft-29 QUIC version.
|
||||
*/
|
||||
|
Loading…
Reference in New Issue
Block a user