From a05fefe74d17699bfaae1b27a5f639ac63ae436b Mon Sep 17 00:00:00 2001 From: Amaury Denoyelle Date: Thu, 27 Jun 2024 15:45:46 +0200 Subject: [PATCH] CLEANUP: quic: cleanup prototypes related to CIDs handling Remove duplicated prototypes from quic_conn.h also present in quic_cid.h. Also remove quic_derive_cid() prototype and mark it as static. --- include/haproxy/quic_cid.h | 2 -- include/haproxy/quic_conn.h | 9 --------- src/quic_cid.c | 8 ++++++-- 3 files changed, 6 insertions(+), 13 deletions(-) diff --git a/include/haproxy/quic_cid.h b/include/haproxy/quic_cid.h index 482a020e1..2e61218cc 100644 --- a/include/haproxy/quic_cid.h +++ b/include/haproxy/quic_cid.h @@ -21,8 +21,6 @@ struct quic_connection_id *new_quic_cid(struct eb_root *root, int quic_get_cid_tid(const unsigned char *cid, size_t cid_len, const struct sockaddr_storage *cli_addr, unsigned char *pos, size_t len); -struct quic_cid quic_derive_cid(const struct quic_cid *orig, - const struct sockaddr_storage *addr); struct quic_conn *retrieve_qc_conn_from_cid(struct quic_rx_packet *pkt, struct sockaddr_storage *saddr, int *new_tid); diff --git a/include/haproxy/quic_conn.h b/include/haproxy/quic_conn.h index 60bc4071f..a3de4ab11 100644 --- a/include/haproxy/quic_conn.h +++ b/include/haproxy/quic_conn.h @@ -60,10 +60,6 @@ void quic_free_arngs(struct quic_conn *qc, struct quic_arngs *arngs); struct quic_cstream *quic_cstream_new(struct quic_conn *qc); struct task *quic_conn_app_io_cb(struct task *t, void *context, unsigned int state); -struct quic_connection_id *new_quic_cid(struct eb_root *root, - struct quic_conn *qc, - const struct quic_cid *orig, - const struct sockaddr_storage *addr); void quic_conn_closed_err_count_inc(struct quic_conn *qc, struct quic_frame *frm); int qc_h3_request_reject(struct quic_conn *qc, uint64_t id); struct quic_conn *qc_new_conn(const struct quic_version *qv, int ipv4, @@ -167,11 +163,6 @@ void quic_set_connection_close(struct quic_conn *qc, const struct quic_err err); void quic_set_tls_alert(struct quic_conn *qc, int alert); int quic_set_app_ops(struct quic_conn *qc, const unsigned char *alpn, size_t alpn_len); int qc_check_dcid(struct quic_conn *qc, unsigned char *dcid, size_t dcid_len); -struct quic_cid quic_derive_cid(const struct quic_cid *orig, - const struct sockaddr_storage *addr); -int quic_get_cid_tid(const unsigned char *cid, size_t cid_len, - const struct sockaddr_storage *cli_addr, - unsigned char *buf, size_t buf_len); int qc_send_mux(struct quic_conn *qc, struct list *frms); void qc_notify_err(struct quic_conn *qc); diff --git a/src/quic_cid.c b/src/quic_cid.c index e27d9caec..a7e81af94 100644 --- a/src/quic_cid.c +++ b/src/quic_cid.c @@ -25,11 +25,15 @@ static int quic_stateless_reset_token_init(struct quic_connection_id *conn_id) } /* Generate a CID directly derived from CID and address. + * + * This function is used to calculate the first connection CID derived from + * client ODCID. This allows to optimize CID global tree by not inserting ODCID + * as client is expected to replace it early. * * Returns the derived CID. */ -struct quic_cid quic_derive_cid(const struct quic_cid *orig, - const struct sockaddr_storage *addr) +static struct quic_cid quic_derive_cid(const struct quic_cid *orig, + const struct sockaddr_storage *addr) { struct quic_cid cid; const struct sockaddr_in *in;