From 40fc97bb535e7bb7e862088302b4d3fa45a7e5e6 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jos=C3=A9=20Sim=C3=B5es?= Date: Fri, 10 Jul 2026 16:41:38 +0100 Subject: [PATCH] Add validation when setting linger option --- nanoFramework.System.Net/Sockets/Socket.cs | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/nanoFramework.System.Net/Sockets/Socket.cs b/nanoFramework.System.Net/Sockets/Socket.cs index e87e77f..d5c1fa8 100644 --- a/nanoFramework.System.Net/Sockets/Socket.cs +++ b/nanoFramework.System.Net/Sockets/Socket.cs @@ -909,6 +909,12 @@ public void SetSocketOption(SocketOptionLevel optionLevel, SocketOptionName opti throw new ObjectDisposedException(); } + // Linger option requires 8 bytes (enabled flag + linger time, 4 bytes each) + if (optionName == SocketOptionName.Linger && optionValue.Length < 8) + { + throw new SocketException(SocketError.Fault); + } + NativeSocket.setsockopt(this, (int)optionLevel, (int)optionName, optionValue); }