diff options
author | Amaury Denoyelle <adenoyelle@haproxy.com> | 2023-05-15 09:35:59 +0200 |
---|---|---|
committer | Amaury Denoyelle <adenoyelle@haproxy.com> | 2023-05-15 14:57:56 +0200 |
commit | 6133aba8896a939d16c2077ff25140651909192b (patch) | |
tree | e3c32b4db4673723a2635f90b7c3212210077f8c | |
parent | 1611a7659b25a9bdc226790b4acb185eb3de2414 (diff) | |
download | haproxy-6133aba8896a939d16c2077ff25140651909192b.tar.gz |
BUG/MINOR: h3: missing goto on buf alloc failure
The following patch introduced proper error management on buffer
allocation failure :
0abde9dee69fe151f5f181a34e0782ef840abe53
BUG/MINOR: mux-quic: properly handle buf alloc failure
However, when decoding an empty STREAM frame with just FIN bit set, this
was not done correctly. Indeed, there is a missing goto statement in
case of a NULL buffer check.
This was reported thanks to coverity analysis. This should fix github
issue #2163.
This must be backported up to 2.6.
-rw-r--r-- | src/h3.c | 1 |
1 files changed, 1 insertions, 0 deletions
@@ -1061,6 +1061,7 @@ static ssize_t h3_decode_qcs(struct qcs *qcs, struct buffer *b, int fin) if (!(appbuf = qc_get_buf(qcs, &qcs->rx.app_buf))) { TRACE_ERROR("data buffer alloc failure", H3_EV_RX_FRAME, qcs->qcc->conn, qcs); h3c->err = H3_INTERNAL_ERROR; + goto err; } htx = htx_from_buf(appbuf); |