From: Frédéric Lécaille Date: Wed, 31 Aug 2022 13:02:53 +0000 (+0200) Subject: BUG/MINOR: quic: TX frames memleak X-Git-Tag: v2.7-dev5~30 X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=bccbad2654908140dec8d5dab368f6109cc7e559;p=thirdparty%2Fhaproxy.git BUG/MINOR: quic: TX frames memleak Missing call to pool_free() for quic_frame objects Must be backported to 2.6. --- diff --git a/src/xprt_quic.c b/src/xprt_quic.c index 399b3e38f1..2ed8adbecf 100644 --- a/src/xprt_quic.c +++ b/src/xprt_quic.c @@ -1764,6 +1764,7 @@ static inline void qc_requeue_nacked_pkt_tx_frms(struct quic_conn *qc, if (strm_frm->offset.key + strm_frm->len <= stream_desc->ack_offset) { TRACE_DEVEL("ignored frame in already acked range", QUIC_EV_CONN_PRSAFRM, qc, frm); + pool_free(pool_head_quic_frame, frm); continue; } else if (strm_frm->offset.key < stream_desc->ack_offset) { @@ -3424,6 +3425,7 @@ static int quic_build_post_handshake_frames(struct quic_conn *qc) LIST_INIT(&frm->reflist); cid = new_quic_cid(&qc->cids, qc, i); if (!cid) { + pool_free(pool_head_quic_frame, frm); TRACE_ERROR("CID allocation error", QUIC_EV_CONN_IO_CB, qc); goto err; }