]> git.ipfire.org Git - thirdparty/haproxy.git/commitdiff
MINOR: quic: Increase the size of handshake RX UDP datagrams
authorFrédéric Lécaille <flecaille@haproxy.com>
Fri, 22 Oct 2021 13:04:27 +0000 (15:04 +0200)
committerAmaury Denoyelle <adenoyelle@haproxy.com>
Fri, 22 Oct 2021 13:48:19 +0000 (15:48 +0200)
Some browsers may send Initial packets with sizes greater than 1252 bytes
(QUIC_INITIAL_IPV4_MTU). Let us increase this size limit up to 2048 bytes.
Also use this size for "max_udp_payload_size" transport parameter to limit
the size of the datagrams we want to receive.

include/haproxy/xprt_quic-t.h
src/xprt_quic.c

index 9e282f5d5ea0eea8cb9ed68d494b5322f900137f..07ccf2319b00d136d23bbef38ef47105a8c6940a 100644 (file)
@@ -50,7 +50,7 @@ typedef unsigned long long ull;
 #define QUIC_INITIAL_IPV6_MTU      1232
 /* XXX TO DO XXX */
 /* Maximum packet length during handshake */
-#define QUIC_PACKET_MAXLEN     QUIC_INITIAL_IPV4_MTU
+#define QUIC_PACKET_MAXLEN     2048
 
 /* The minimum length of Initial packets. */
 #define QUIC_INITIAL_PACKET_MINLEN 1200
index 783d11e02decb9767be29c19c5d4559db16ad52e..49165c38fb30bac3efcd18bc081d7afb4178e060 100644 (file)
@@ -56,7 +56,7 @@
  * before updating them with customized values.
  */
 struct quic_transport_params quic_dflt_transport_params = {
-       .max_udp_payload_size = QUIC_DFLT_MAX_UDP_PAYLOAD_SIZE,
+       .max_udp_payload_size = QUIC_PACKET_MAXLEN,
        .ack_delay_exponent   = QUIC_DFLT_ACK_DELAY_COMPONENT,
        .max_ack_delay        = QUIC_DFLT_MAX_ACK_DELAY,
        .active_connection_id_limit = QUIC_ACTIVE_CONNECTION_ID_LIMIT,