From: Frédéric Lécaille Date: Mon, 25 Apr 2022 08:24:12 +0000 (+0200) Subject: MINOR: quic: Mark packets as probing with old data X-Git-Tag: v2.6-dev8~26 X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=1809c33d6eb52beff14f9d02d811375619d3d347;p=thirdparty%2Fhaproxy.git MINOR: quic: Mark packets as probing with old data When probing retranmissions with old data are needed for the connection we mark the packets as probing with old data to track them when acknowledged: we do not resend frames with old data when lost. --- diff --git a/src/xprt_quic.c b/src/xprt_quic.c index d688f20b3e..b43e65edfb 100644 --- a/src/xprt_quic.c +++ b/src/xprt_quic.c @@ -3012,6 +3012,9 @@ static int qc_prep_app_pkts(struct quic_conn *qc, struct qring *qr, if (!pkt) goto err; + if (qc->flags & QUIC_FL_CONN_RETRANS_OLD_DATA) + pkt->flags |= QUIC_FL_TX_PACKET_PROBE_WITH_OLD_DATA; + total += pkt->len; /* Set the current datagram as prepared into . */ qc_set_dg(cbuf, pkt->len, pkt); @@ -3133,6 +3136,9 @@ static int qc_prep_pkts(struct quic_conn *qc, struct qring *qr, if (!cur_pkt) goto err; + if (qc->flags & QUIC_FL_CONN_RETRANS_OLD_DATA) + cur_pkt->flags |= QUIC_FL_TX_PACKET_PROBE_WITH_OLD_DATA; + total += cur_pkt->len; /* keep trace of the first packet in the datagram */ if (!first_pkt)