From 6e7b6aed965f36ace89bc013c2eb83e311a8f4db Mon Sep 17 00:00:00 2001 From: DHR60 Date: Thu, 10 Apr 2025 23:19:56 +0800 Subject: [PATCH] Simplifies local DNS address handling --- .../CoreConfig/CoreConfigSingboxService.cs | 40 +++++++------------ 1 file changed, 15 insertions(+), 25 deletions(-) diff --git a/v2rayN/ServiceLib/Services/CoreConfig/CoreConfigSingboxService.cs b/v2rayN/ServiceLib/Services/CoreConfig/CoreConfigSingboxService.cs index dec0d3ff..6e87b6d8 100644 --- a/v2rayN/ServiceLib/Services/CoreConfig/CoreConfigSingboxService.cs +++ b/v2rayN/ServiceLib/Services/CoreConfig/CoreConfigSingboxService.cs @@ -1476,46 +1476,36 @@ public class CoreConfigSingboxService localDnsType = "local"; localDnsAddress = null; } - else if (localDnsAddress.StartsWith("dhcp")) + else if (localDnsAddress.StartsWith("dhcp") && localDnsAddress.Length > 7) { localDnsType = "dhcp"; - //if (localDnsAddress.Length > 7) // dhcp:// - //{ - // localDnsAddress = localDnsAddress.Substring(7); - //} + // // dhcp:// + // dhcpDnsInterface = localDnsAddress.Substring(7); localDnsAddress = null; } - else if (localDnsAddress.StartsWith("tcp")) + else if (localDnsAddress.StartsWith("tcp") && localDnsAddress.Length > 6) { localDnsType = "tcp"; - if (localDnsAddress.Length > 6) // tcp:// - { - localDnsAddress = localDnsAddress.Substring(6); - } + // tcp:// + localDnsAddress = localDnsAddress.Substring(6); } - else if (localDnsAddress.StartsWith("tls")) + else if (localDnsAddress.StartsWith("tls") && localDnsAddress.Length > 6) { localDnsType = "tls"; - if (localDnsAddress.Length > 6) // tls:// - { - localDnsAddress = localDnsAddress.Substring(6); - } + // tls:// + localDnsAddress = localDnsAddress.Substring(6); } - else if (localDnsAddress.StartsWith("https")) + else if (localDnsAddress.StartsWith("https") && localDnsAddress.Length > 8) { localDnsType = "https"; - if (localDnsAddress.Length > 8) // https:// - { - localDnsAddress = localDnsAddress.Substring(8); - } + // https:// + localDnsAddress = localDnsAddress.Substring(8); } - else if (localDnsAddress.StartsWith("quic")) + else if (localDnsAddress.StartsWith("quic") && localDnsAddress.Length > 7) { localDnsType = "quic"; - if (localDnsAddress.Length > 7) // quic:// - { - localDnsAddress = localDnsAddress.Substring(7); - } + // quic:// + localDnsAddress = localDnsAddress.Substring(7); } else {