From 82047ccbc4ecc9b8c575ee9754e12e823898ea53 Mon Sep 17 00:00:00 2001 From: acetone <63557806+freeacetone@users.noreply.github.com> Date: Mon, 14 Sep 2026 14:45:13 -0400 Subject: [PATCH] check clove length before reading delivery status and tunnel test --- libi2pd/Destination.cpp | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/libi2pd/Destination.cpp b/libi2pd/Destination.cpp index ab66d93f..3af6fdd6 100644 --- a/libi2pd/Destination.cpp +++ b/libi2pd/Destination.cpp @@ -376,10 +376,11 @@ namespace client HandleDataMessage (payload, len, from); break; case eI2NPDeliveryStatus: - HandleDeliveryStatusMessage (bufbe32toh (payload + DELIVERY_STATUS_MSGID_OFFSET)); + if (len >= DELIVERY_STATUS_SIZE) + HandleDeliveryStatusMessage (bufbe32toh (payload + DELIVERY_STATUS_MSGID_OFFSET)); break; case eI2NPTunnelTest: - if (m_Pool) + if (m_Pool && len >= TUNNEL_TEST_SIZE) m_Pool->ProcessTunnelTest (bufbe32toh (payload + TUNNEL_TEST_MSGID_OFFSET), bufbe64toh (payload + TUNNEL_TEST_TIMESTAMP_OFFSET)); break; case eI2NPDatabaseStore: