From 91a211fb0804fcd5dceace92765fbfdff35a748f Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Fr=C3=A9d=C3=A9ric=20L=C3=A9caille?= Date: Tue, 24 May 2022 10:54:42 +0200 Subject: [PATCH] BUG/MINOR: quic: Largest RX packet numbers mixing When we select the next encryption level in qc_treat_rx_pkts() we must reset the local largest_pn variable if we do not want to reuse its previous value for this encryption. This bug could only happend during handshake step and had no visible impact because this variable is only used during the header protection removal step which hopefully supports the packet reordering. --- src/xprt_quic.c | 1 + 1 file changed, 1 insertion(+) diff --git a/src/xprt_quic.c b/src/xprt_quic.c index de65b7f65..dd1bbbe7e 100644 --- a/src/xprt_quic.c +++ b/src/xprt_quic.c @@ -3598,6 +3598,7 @@ int qc_treat_rx_pkts(struct quic_enc_level *cur_el, struct quic_enc_level *next_ if (qel == cur_el) { BUG_ON(qel == next_el); qel = next_el; + largest_pn = -1; goto next_tel; }