aboutsummaryrefslogtreecommitdiff
path: root/src/net/zmq.cpp
diff options
context:
space:
mode:
authorselsta <selsta@sent.at>2026-06-09 21:36:51 +0200
committerselsta <selsta@sent.at>2026-06-10 22:18:09 +0200
commit4f6652f356f804403f46ecbbb8b90c1c03abbc64 (patch)
treec4f05c0f554955f2134decc6ed8040ae39b15908 /src/net/zmq.cpp
parent70d57adc4b08c39e391468369f1a29a532fb9a8e (diff)
downloadmonzero-core-4f6652f356f804403f46ecbbb8b90c1c03abbc64.tar.gz
monzero-core-4f6652f356f804403f46ecbbb8b90c1c03abbc64.tar.xz
monzero-core-4f6652f356f804403f46ecbbb8b90c1c03abbc64.zip
net: cap aggregate ZMQ receive size
Diffstat (limited to 'src/net/zmq.cpp')
-rw-r--r--src/net/zmq.cpp6
1 files changed, 6 insertions, 0 deletions
diff --git a/src/net/zmq.cpp b/src/net/zmq.cpp
index 2b3ca8376..4a9d3e162 100644
--- a/src/net/zmq.cpp
+++ b/src/net/zmq.cpp
@@ -150,6 +150,12 @@ namespace zmq
if ((last = zmq_msg_recv(part.handle(), socket, flags)) < 0)
return last;
+ if (max_message_size < payload.size() ||
+ max_message_size - payload.size() < part.size())
+ {
+ errno = EMSGSIZE;
+ return -1;
+ }
payload.append(part.data(), part.size());
if (!zmq_msg_more(part.handle()))
break;