From dadd42e5749661e32cdebda422e8ee87ef0695f3 Mon Sep 17 00:00:00 2001 From: Bond-009 Date: Mon, 20 Jul 2020 18:41:01 +0200 Subject: [PATCH] Merge pull request #3620 from BaronGreenback/IPFix Fix for #3607 and #3515 (cherry picked from commit 0750357916b600a4b4c27bc4babd2adcc6390473) Signed-off-by: Joshua M. Boniface --- .../Networking/NetworkManager.cs | 13 ++++++++++++- 1 file changed, 12 insertions(+), 1 deletion(-) diff --git a/Emby.Server.Implementations/Networking/NetworkManager.cs b/Emby.Server.Implementations/Networking/NetworkManager.cs index 6aa1dfbc9b..50cb44b284 100644 --- a/Emby.Server.Implementations/Networking/NetworkManager.cs +++ b/Emby.Server.Implementations/Networking/NetworkManager.cs @@ -152,7 +152,12 @@ namespace Emby.Server.Implementations.Networking return true; } - byte[] octet = IPAddress.Parse(endpoint).GetAddressBytes(); + if (!IPAddress.TryParse(endpoint, out var ipAddress)) + { + return false; + } + + byte[] octet = ipAddress.GetAddressBytes(); if ((octet[0] == 10) || (octet[0] == 172 && (octet[1] >= 16 && octet[1] <= 31)) || // RFC1918 @@ -268,6 +273,12 @@ namespace Emby.Server.Implementations.Networking string excludeAddress = "[" + addressString + "]"; var subnets = LocalSubnetsFn(); + // Include any address if LAN subnets aren't specified + if (subnets.Length == 0) + { + return true; + } + // Exclude any addresses if they appear in the LAN list in [ ] if (Array.IndexOf(subnets, excludeAddress) != -1) {