From 27cf988ee58a430479def9cfb40173a8b3007e4e Mon Sep 17 00:00:00 2001 From: Kieran Kihn <114803508+kierankihn@users.noreply.github.com> Date: Sat, 29 Nov 2025 18:51:18 +0800 Subject: [PATCH] fix(network): validate and reattempt read if message length is invalid - Updated `NetworkServer` to validate `messageLength` and reattempt `read` if it exceeds the maximum allowed size. --- src/network/NetworkServer.cpp | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/src/network/NetworkServer.cpp b/src/network/NetworkServer.cpp index ddb0ab6..2ae84b5 100644 --- a/src/network/NetworkServer.cpp +++ b/src/network/NetworkServer.cpp @@ -32,8 +32,11 @@ namespace UNO::NETWORK { asio::buffer(messageLength.get(), sizeof(size_t)), [this, self = shared_from_this(), messageLength](const asio::error_code &ec, size_t length) { if (!ec) { - if (messageLength > 0 && messageLength <= 10 * 1024 * 1024) { - this->readBody(messageLength); + if (*messageLength <= 10 * 1024 * 1024) { + this->readBody(*messageLength); + } + else { + read(); } } });