From dfeb0236bface1790ebb14dd03873c72d73acee2 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Nicol=C3=B2=20Caruso?= <nicolo.caruso@skywarder.eu>
Date: Sat, 24 May 2025 12:03:15 +0200
Subject: [PATCH] [Wiz5500] Fix returned length and uninitialized array

- Fix returned length: The recv length should be returned to clear
  the whole read buffer since all should be read.

co-authored by Davide Mor
---
 src/shared/drivers/WIZ5500/WIZ5500.cpp | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/src/shared/drivers/WIZ5500/WIZ5500.cpp b/src/shared/drivers/WIZ5500/WIZ5500.cpp
index afc31070e..4f1491e39 100644
--- a/src/shared/drivers/WIZ5500/WIZ5500.cpp
+++ b/src/shared/drivers/WIZ5500/WIZ5500.cpp
@@ -409,7 +409,7 @@ ssize_t Wiz5500::recvfrom(int sock_n, uint8_t* data, size_t len, WizIp& dst_ip,
 
     spiRead(Wiz::getSocketRxBlock(sock_n), addr, data, read_len);
 
-    addr += read_len;
+    addr += recv_len;
     spiWrite16(Wiz::getSocketRegBlock(sock_n), Wiz::Socket::REG_RX_RD, addr);
 
     // Finally tell the device that we correctly received and read the data
-- 
GitLab