BUG/MINOR: quic: wrong logical statement in in_recovery_period() (BBR)
authorFrederic Lecaille <flecaille@haproxy.com>
Thu, 12 Dec 2024 09:45:26 +0000 (10:45 +0100)
committerChristopher Faulet <cfaulet@haproxy.com>
Mon, 6 Jan 2025 10:17:44 +0000 (11:17 +0100)
A && logical operator was badly replaced by a || in this function which decides
if BBR is in a recovery period.

Must be backported to 3.1.

(cherry picked from commit 1dbf6b8bedadd5d287ab44e1a387a89e2fc6c70b)
Signed-off-by: Christopher Faulet <cfaulet@haproxy.com>

src/quic_cc_bbr.c

index 39fd673..9a3b0a8 100644 (file)
@@ -1296,7 +1296,7 @@ static void bbr_update_control_parameters(struct bbr *bbr,
 
 static inline int in_recovery_period(struct quic_cc_path *p, uint32_t ts)
 {
-       return tick_isset(p->recovery_start_ts) ||
+       return tick_isset(p->recovery_start_ts) &&
                tick_is_le(ts, p->recovery_start_ts);
 }