From: Christopher Faulet Date: Mon, 30 Jan 2023 07:26:09 +0000 (+0100) Subject: BUG/MINOR: mux-h2: Fix possible null pointer deref on h2c in _h2_trace_header() X-Git-Tag: v2.8-dev3~57 X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=c254516c5347052041630f9769ca1cd155d4f1d0;p=thirdparty%2Fhaproxy.git BUG/MINOR: mux-h2: Fix possible null pointer deref on h2c in _h2_trace_header() As reported by Coverity, this function may be called with no h2c. Thus, the pointer must always be checked before any access. One test was missing in TRACE_PRINTF_LOC(). This patch should fix the issue #2015. No backport needed, except if the commit 11e8a8c2a ("MEDIUM: mux-h2/trace: add tracing support for headers") is backported. --- diff --git a/src/mux_h2.c b/src/mux_h2.c index 4e1a440986..4c5171a0bd 100644 --- a/src/mux_h2.c +++ b/src/mux_h2.c @@ -879,7 +879,7 @@ void _h2_trace_header(const struct ist hn, const struct ist hv, chunk_appendf(&trash, " (... +%ld)", (long)(hv.len - v_ist.len)); TRACE_PRINTF_LOC(TRACE_LEVEL_USER, mask, trc_loc, func, - h2c->conn, 0, 0, 0, + (h2c ? h2c->conn : 0), 0, 0, 0, "%s%s%s %s: %s", c_str, s_str, (mask & H2_EV_TX_HDR) ? "sndh" : "rcvh", n_ist.ptr, v_ist.ptr);