From: Amaury Denoyelle Date: Tue, 6 May 2025 15:59:37 +0000 (+0200) Subject: BUG/MINOR: quic: reject retry_source_cid TP on server side X-Git-Tag: v3.2-dev15~12 X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=10f1f1adce032742d60fe14ee780871c4e6a1db1;p=thirdparty%2Fhaproxy.git BUG/MINOR: quic: reject retry_source_cid TP on server side Close the connection on error if retry_source_connection_id transport parameter is received. This is specified by RFC 9000 as this parameter must not be emitted by a client. Previously, it was silently ignored. This should be backported up to 2.6. Note that is relies on previous patch "MINOR: quic: extend return value on TP parsing". --- diff --git a/src/quic_tp.c b/src/quic_tp.c index a4252e3aa..0499cb274 100644 --- a/src/quic_tp.c +++ b/src/quic_tp.c @@ -360,6 +360,13 @@ quic_transport_param_decode(struct quic_transport_params *p, int server, buf, *buf + len, server)) return QUIC_TP_DEC_ERR_TRUNC; break; + case QUIC_TP_RETRY_SOURCE_CONNECTION_ID: + /* see original_destination_connection_id RFC reference above. */ + if (!server) + return QUIC_TP_DEC_ERR_INVAL; + + /* TODO implement parsing for client side */ + break; default: *buf += len; };