From: Amaury Denoyelle Date: Wed, 16 Oct 2024 15:50:30 +0000 (+0200) Subject: MINOR: quic: simplify qc_prep_pkts() exit path X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=ebdcb59a0f13de6c7635583ea71bf7036eb9774f;p=thirdparty%2Fhaproxy.git MINOR: quic: simplify qc_prep_pkts() exit path --- diff --git a/src/quic_tx.c b/src/quic_tx.c index b2ad2ad347..5a0d42aaf1 100644 --- a/src/quic_tx.c +++ b/src/quic_tx.c @@ -659,6 +659,7 @@ static int qc_prep_pkts(struct quic_conn *qc, struct buffer *buf, if (err == QC_BUILD_PKT_ERR_ALLOC || err == QC_BUILD_PKT_ERR_ENCRYPT) goto leave; + first_pkt = NULL; goto out; } @@ -693,10 +694,8 @@ static int qc_prep_pkts(struct quic_conn *qc, struct buffer *buf, BUG_ON(padding && !next_qel); /* Build only one datagram when an immediate close is required. */ - if (cc) { - qc_txb_store(buf, dglen, first_pkt); + if (cc) goto out; - } /* Only one short packet by datagram when probing. */ if (probe && qel == qc->ael) @@ -743,10 +742,10 @@ static int qc_prep_pkts(struct quic_conn *qc, struct buffer *buf, TRACE_DEVEL("next encryption level", QUIC_EV_CONN_PHPKTS, qc); } + out: if (first_pkt) qc_txb_store(buf, wrlen, first_pkt); - out: if (cc && total) { BUG_ON(buf != &qc->tx.cc_buf); BUG_ON(dglen != total);