From: Frédéric Lécaille Date: Wed, 26 Jan 2022 17:04:50 +0000 (+0100) Subject: MINOR: quic: Pass CID as a buffer to quic_get_cid_tid() X-Git-Tag: v2.6-dev1~55 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=220894a5d601fdfc393f84fd0afe44c5bf3c500b;p=thirdparty%2Fhaproxy.git MINOR: quic: Pass CID as a buffer to quic_get_cid_tid() Very minor modification so that this function might be used for a context without CID (at datagram level). --- diff --git a/include/haproxy/xprt_quic.h b/include/haproxy/xprt_quic.h index 4bda6a74d6..b76d6f34dc 100644 --- a/include/haproxy/xprt_quic.h +++ b/include/haproxy/xprt_quic.h @@ -133,9 +133,9 @@ static inline void quic_cid_dump(struct buffer *buf, } /* Simply compute a thread ID from a CID */ -static inline unsigned long quic_get_cid_tid(const struct quic_cid *cid) +static inline unsigned long quic_get_cid_tid(const unsigned char *cid) { - return cid->data[0] % global.nbthread; + return *cid % global.nbthread; } /* Free the CIDs attached to QUIC connection. This must be called under diff --git a/src/xprt_quic.c b/src/xprt_quic.c index cc3985e914..24c2153504 100644 --- a/src/xprt_quic.c +++ b/src/xprt_quic.c @@ -4160,7 +4160,7 @@ int qc_conn_alloc_ssl_ctx(struct quic_conn *qc) /* Set tasklet tid based on the SCID selected by us for this * connection. The upper layer will also be binded on the same thread. */ - qc->tid = ctx->wait_event.tasklet->tid = quic_get_cid_tid(&qc->scid); + qc->tid = ctx->wait_event.tasklet->tid = quic_get_cid_tid(qc->scid.data); if (qc_is_listener(qc)) { if (qc_ssl_sess_init(qc, bc->initial_ctx, &ctx->ssl,