From: Hugo Landau Date: Wed, 9 Aug 2023 16:46:33 +0000 (+0100) Subject: QUIC DDD: Fix bug in ddd-06-mem-uv X-Git-Tag: openssl-3.2.0-alpha1~80 X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=b1cb0675e5c76c6dd78863e6857b5456718da7b5;p=thirdparty%2Fopenssl.git QUIC DDD: Fix bug in ddd-06-mem-uv Reviewed-by: Tomas Mraz Reviewed-by: Matt Caswell (Merged from https://github.com/openssl/openssl/pull/21715) --- diff --git a/doc/designs/ddd/ddd-06-mem-uv.c b/doc/designs/ddd/ddd-06-mem-uv.c index f912f68bdf7..7af5a111054 100644 --- a/doc/designs/ddd/ddd-06-mem-uv.c +++ b/doc/designs/ddd/ddd-06-mem-uv.c @@ -237,11 +237,12 @@ static void on_rx_push(APP_CONN *conn) srd = SSL_read(conn->ssl, buf, buf_len); flush_write_buf(conn); - if (srd < 0) { - free(buf); + if (srd <= 0) { rc = SSL_get_error(conn->ssl, srd); - if (rc == SSL_ERROR_WANT_READ) + if (rc == SSL_ERROR_WANT_READ) { + free(buf); return; + } } conn->app_read_cb(conn, buf, srd, conn->app_read_arg);