Simplifies local DNS address handling

DHR60 2025-04-10 23:19:56 +08:00
parent 9bc7c7be3a
commit 6e7b6aed96
1 changed files with 15 additions and 25 deletions

View File

@ -1476,46 +1476,36 @@ public class CoreConfigSingboxService
localDnsType = "local"; localDnsType = "local";
localDnsAddress = null; localDnsAddress = null;
} }
else if (localDnsAddress.StartsWith("dhcp")) else if (localDnsAddress.StartsWith("dhcp") && localDnsAddress.Length > 7)
{ {
localDnsType = "dhcp"; localDnsType = "dhcp";
//if (localDnsAddress.Length > 7) // dhcp:// // // dhcp://
//{ // dhcpDnsInterface = localDnsAddress.Substring(7);
// localDnsAddress = localDnsAddress.Substring(7);
//}
localDnsAddress = null; localDnsAddress = null;
} }
else if (localDnsAddress.StartsWith("tcp")) else if (localDnsAddress.StartsWith("tcp") && localDnsAddress.Length > 6)
{ {
localDnsType = "tcp"; localDnsType = "tcp";
if (localDnsAddress.Length > 6) // tcp:// // tcp://
{ localDnsAddress = localDnsAddress.Substring(6);
localDnsAddress = localDnsAddress.Substring(6);
}
} }
else if (localDnsAddress.StartsWith("tls")) else if (localDnsAddress.StartsWith("tls") && localDnsAddress.Length > 6)
{ {
localDnsType = "tls"; localDnsType = "tls";
if (localDnsAddress.Length > 6) // tls:// // tls://
{ localDnsAddress = localDnsAddress.Substring(6);
localDnsAddress = localDnsAddress.Substring(6);
}
} }
else if (localDnsAddress.StartsWith("https")) else if (localDnsAddress.StartsWith("https") && localDnsAddress.Length > 8)
{ {
localDnsType = "https"; localDnsType = "https";
if (localDnsAddress.Length > 8) // https:// // https://
{ localDnsAddress = localDnsAddress.Substring(8);
localDnsAddress = localDnsAddress.Substring(8);
}
} }
else if (localDnsAddress.StartsWith("quic")) else if (localDnsAddress.StartsWith("quic") && localDnsAddress.Length > 7)
{ {
localDnsType = "quic"; localDnsType = "quic";
if (localDnsAddress.Length > 7) // quic:// // quic://
{ localDnsAddress = localDnsAddress.Substring(7);
localDnsAddress = localDnsAddress.Substring(7);
}
} }
else else
{ {