]> git.ipfire.org Git - thirdparty/haproxy.git/commitdiff
MINOR: quic: simplify qc_prep_pkts() exit path
authorAmaury Denoyelle <adenoyelle@haproxy.com>
Wed, 16 Oct 2024 15:50:30 +0000 (17:50 +0200)
committerAmaury Denoyelle <adenoyelle@haproxy.com>
Thu, 31 Oct 2024 14:35:31 +0000 (15:35 +0100)
src/quic_tx.c

index b2ad2ad3475a4c156432bbb60ca34d74bc3b66e3..5a0d42aaf198c4d86b596c648d3f224aacbc1f6d 100644 (file)
@@ -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);