]> git.ipfire.org Git - thirdparty/haproxy.git/commitdiff
MINOR: quic: Do not send ACK frames when probing
authorFrédéric Lécaille <flecaille@haproxy.com>
Mon, 25 Apr 2022 08:38:27 +0000 (10:38 +0200)
committerAmaury Denoyelle <adenoyelle@haproxy.com>
Thu, 28 Apr 2022 14:22:40 +0000 (16:22 +0200)
When we are probing, we do not receive packets, furthermore all ACK frames have
already been sent. This is useless to send ACK when probing the peer. This
modification does not reset the flag which marks the connection as requiring an
ACK frame to be sent. If this is the case, this will be taken into an account
by after the probing process.

src/xprt_quic.c

index 66ee1989894058b720b8978c106a97e7ab777227..e11b8b6d2a7a27778198803a6939edb21db695a9 100644 (file)
@@ -5720,7 +5720,7 @@ static int qc_do_build_pkt(unsigned char *pos, const unsigned char *end,
        head_len = pos - beg;
        /* Build an ACK frame if required. */
        ack_frm_len = 0;
-       if ((qel->pktns->flags & QUIC_FL_PKTNS_ACK_REQUIRED)) {
+       if ((qel->pktns->flags & QUIC_FL_PKTNS_ACK_REQUIRED) && !qel->pktns->tx.pto_probe) {
            BUG_ON(eb_is_empty(&qel->pktns->rx.arngs.root));
                ack_frm.tx_ack.ack_delay = 0;
                ack_frm.tx_ack.arngs = &qel->pktns->rx.arngs;