From 048abda482cd5b30bca087e20e720dd38c58f7b0 Mon Sep 17 00:00:00 2001 From: Marlon Date: Sun, 4 Aug 2024 19:44:45 +0200 Subject: [PATCH] Explicitly bind to IP Address for the UDP Client --- Shared/Services/WolService.cs | 12 ++---------- 1 file changed, 2 insertions(+), 10 deletions(-) diff --git a/Shared/Services/WolService.cs b/Shared/Services/WolService.cs index 05cb9c2..18870b1 100644 --- a/Shared/Services/WolService.cs +++ b/Shared/Services/WolService.cs @@ -125,29 +125,21 @@ public class WolService private static void BroadcastWol(IPAddress localAddress, IPAddress broadCastAddress, byte[] data) { - //var localEP = new IPEndPoint(localAddress, 0); - var udpc = new UdpClient(); - + using var udpc = new UdpClient(new IPEndPoint(localAddress, 0)); udpc.Client.SetSocketOption(SocketOptionLevel.Socket, SocketOptionName.Broadcast, 1); - //udpc.Client.SetSocketOption(SocketOptionLevel.Socket, SocketOptionName.DontRoute, 1); var target = new IPEndPoint(broadCastAddress, DefaultWolPort); - udpc.Send(data, data.Length, target); } private static void SendWolToIpAddress(IPAddress localAddress, IPAddress remoteAddress, byte[] data, PhysicalAddress physicalAddress) { - //var localEP = new IPEndPoint(localAddress, 0); - var netLuid = CreateTransientLocalNetEntry(remoteAddress, physicalAddress); try { - var udpc = new UdpClient(); + using var udpc = new UdpClient(new IPEndPoint(localAddress, 0)); udpc.Client.SetSocketOption(SocketOptionLevel.Socket, SocketOptionName.Broadcast, 1); - var target = new IPEndPoint(remoteAddress, DefaultWolPort); - udpc.Send(data, data.Length, target); } finally