From 704e7a85f39e8727876c53c601210258cb52774e Mon Sep 17 00:00:00 2001 From: Stefan Eissing Date: Fri, 6 Mar 2026 08:38:03 +0100 Subject: [PATCH] mqtt: fix EOF handling In mqtt_recv_atleast(), recognize an EOF as error. Fixes #20815 Reported-by: Max Dymond Closes #20830 --- lib/mqtt.c | 2 ++ 1 file changed, 2 insertions(+) diff --git a/lib/mqtt.c b/lib/mqtt.c index ef373c0638..e591cfcf01 100644 --- a/lib/mqtt.c +++ b/lib/mqtt.c @@ -379,6 +379,8 @@ static CURLcode mqtt_recv_atleast(struct Curl_easy *data, size_t nbytes) result = Curl_xfer_recv(data, (char *)readbuf, nbytes - rlen, &nread); if(result) return result; + if(!nread) /* EOF */ + return CURLE_RECV_ERROR; if(curlx_dyn_addn(&mq->recvbuf, readbuf, nread)) return CURLE_OUT_OF_MEMORY; rlen = curlx_dyn_len(&mq->recvbuf);