BUG/MINOR: quic: Do not probe from an already probing packet number space
During a handshake, after having prepared a probe upon a PTO expiration from
process_timer(), we wake up the I/O handler to make it send probing packets.
This handler first treat incoming packets which trigger a fast retransmission
leading to send too much probing (duplicated) packets. In this cas we cancel
the fast retranmission.
diff --git a/src/xprt_quic.c b/src/xprt_quic.c
index dd9c354..c48d1c2 100644
--- a/src/xprt_quic.c
+++ b/src/xprt_quic.c
@@ -2320,6 +2320,15 @@
struct quic_tx_packet *pkt;
struct list *tmp = &itmp;
+ /* Do not probe from a packet number space if some probing
+ * was already asked.
+ */
+ if (qel->pktns->tx.pto_probe) {
+ qel = hqel;
+ if (qel->pktns->tx.pto_probe)
+ return;
+ }
+
start:
pkt = NULL;
pkts = &qel->pktns->tx.pkts;