From 7b23c9075ce3d16e020c574b5e0a229222c136fe Mon Sep 17 00:00:00 2001 From: Amaury Denoyelle Date: Thu, 21 Nov 2024 10:24:34 +0100 Subject: [PATCH] BUG/MINOR: cfgparse-quic: fix bbr initialization To support pacing with cubic, a recent change was introduced to render quic_cc_algo on bind line dynamically allocated, instead of pointing to a globally defined variable. This allows customization of the algorithm callbacks per bind line. This was not correctly used for BBR as it was set to point to the global quic_cc_algo_bbr. This causes a segfault on haproxy process closing. Fix this by properly initializing BBR as other algorithms. This should fix coverity report from github issue #2786. --- src/cfgparse-quic.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/cfgparse-quic.c b/src/cfgparse-quic.c index 9db2a591d..3729bee7c 100644 --- a/src/cfgparse-quic.c +++ b/src/cfgparse-quic.c @@ -151,7 +151,7 @@ static int bind_parse_quic_cc_algo(char **args, int cur_arg, struct proxy *px, /* bbr */ algo = QUIC_CC_BBR_STR; - cc_algo = &quic_cc_algo_bbr; + *cc_algo = quic_cc_algo_bbr; arg += strlen(QUIC_CC_BBR_STR); } else if (strncmp(arg, QUIC_CC_NO_CC_STR, strlen(QUIC_CC_NO_CC_STR)) == 0) { -- 2.47.3