mirror of
https://github.com/SpaceTimee/Sheas-Cealer.git
synced 2025-07-13 21:02:08 +08:00
1.1.2 -> 1.1.3 第15次更新
This commit is contained in:
parent
820df74051
commit
37bcd63b9e
@ -38,7 +38,7 @@ public partial class MainWin : Window
|
|||||||
private static readonly FileSystemWatcher NginxConfWatcher = new(Path.GetDirectoryName(MainConst.NginxConfPath)!, Path.GetFileName(MainConst.NginxConfPath)) { EnableRaisingEvents = true, NotifyFilter = NotifyFilters.LastWrite };
|
private static readonly FileSystemWatcher NginxConfWatcher = new(Path.GetDirectoryName(MainConst.NginxConfPath)!, Path.GetFileName(MainConst.NginxConfPath)) { EnableRaisingEvents = true, NotifyFilter = NotifyFilters.LastWrite };
|
||||||
private static readonly FileSystemWatcher MihomoConfWatcher = new(Path.GetDirectoryName(MainConst.MihomoConfPath)!, Path.GetFileName(MainConst.MihomoConfPath)) { EnableRaisingEvents = true, NotifyFilter = NotifyFilters.LastWrite };
|
private static readonly FileSystemWatcher MihomoConfWatcher = new(Path.GetDirectoryName(MainConst.MihomoConfPath)!, Path.GetFileName(MainConst.MihomoConfPath)) { EnableRaisingEvents = true, NotifyFilter = NotifyFilters.LastWrite };
|
||||||
|
|
||||||
private static readonly SortedDictionary<string, List<(List<(string cealHostIncludeDomain, string ceahHostExcludeDomain)> cealHostDomainPairs, string? cealHostSni, string cealHostIp)>> CealHostRulesDict = [];
|
private static readonly SortedDictionary<string, List<(List<(string cealHostIncludeDomain, string cealHostExcludeDomain)> cealHostDomainPairs, string? cealHostSni, string cealHostIp)>> CealHostRulesDict = [];
|
||||||
private static string CealArgs = string.Empty;
|
private static string CealArgs = string.Empty;
|
||||||
private static NginxConfig? NginxConfs;
|
private static NginxConfig? NginxConfs;
|
||||||
private static string? ExtraNginxConfs;
|
private static string? ExtraNginxConfs;
|
||||||
@ -210,7 +210,6 @@ public partial class MainWin : Window
|
|||||||
|
|
||||||
CertificateRequest childCertRequest = new(MainConst.NginxChildCertSubjectName, certKey, HashAlgorithmName.SHA256, RSASignaturePadding.Pkcs1);
|
CertificateRequest childCertRequest = new(MainConst.NginxChildCertSubjectName, certKey, HashAlgorithmName.SHA256, RSASignaturePadding.Pkcs1);
|
||||||
SubjectAlternativeNameBuilder childCertSanBuilder = new();
|
SubjectAlternativeNameBuilder childCertSanBuilder = new();
|
||||||
|
|
||||||
string hostsConfAppendContent = MainConst.HostsConfStartMarker;
|
string hostsConfAppendContent = MainConst.HostsConfStartMarker;
|
||||||
|
|
||||||
foreach (List<(List<(string cealHostIncludeDomain, string cealHostExcludeDomain)> cealHostDomainPairs, string? cealHostSni, string cealHostIp)> cealHostRules in CealHostRulesDict.Values)
|
foreach (List<(List<(string cealHostIncludeDomain, string cealHostExcludeDomain)> cealHostDomainPairs, string? cealHostSni, string cealHostIp)> cealHostRules in CealHostRulesDict.Values)
|
||||||
@ -242,6 +241,7 @@ public partial class MainWin : Window
|
|||||||
File.WriteAllText(MainConst.NginxKeyPath, certKey.ExportPkcs8PrivateKeyPem());
|
File.WriteAllText(MainConst.NginxKeyPath, certKey.ExportPkcs8PrivateKeyPem());
|
||||||
|
|
||||||
hostsConfAppendContent += MainConst.HostsConfEndMarker;
|
hostsConfAppendContent += MainConst.HostsConfEndMarker;
|
||||||
|
|
||||||
File.AppendAllText(MainConst.HostsConfPath, hostsConfAppendContent);
|
File.AppendAllText(MainConst.HostsConfPath, hostsConfAppendContent);
|
||||||
|
|
||||||
MainPres.IsNginxIniting = true;
|
MainPres.IsNginxIniting = true;
|
||||||
@ -501,8 +501,8 @@ public partial class MainWin : Window
|
|||||||
{
|
{
|
||||||
List<(string cealHostIncludeDomain, string cealHostExcludeDomain)> cealHostDomainPairs = [];
|
List<(string cealHostIncludeDomain, string cealHostExcludeDomain)> cealHostDomainPairs = [];
|
||||||
string? cealHostSni = cealHostRule[1].ValueKind == JsonValueKind.Null ? null :
|
string? cealHostSni = cealHostRule[1].ValueKind == JsonValueKind.Null ? null :
|
||||||
string.IsNullOrWhiteSpace(cealHostRule[1].ToString()) ? $"{cealHostName}{CealHostRulesDict[cealHostName].Count}" : cealHostRule[1].ToString();
|
string.IsNullOrWhiteSpace(cealHostRule[1].ToString()) ? $"{cealHostName}{CealHostRulesDict[cealHostName].Count}" : cealHostRule[1].ToString().Trim();
|
||||||
string cealHostIp = string.IsNullOrWhiteSpace(cealHostRule[2].ToString()) ? "127.0.0.1" : cealHostRule[2].ToString();
|
string cealHostIp = string.IsNullOrWhiteSpace(cealHostRule[2].ToString()) ? "127.0.0.1" : cealHostRule[2].ToString().Trim();
|
||||||
|
|
||||||
foreach (JsonElement cealHostDomain in cealHostRule[0].EnumerateArray())
|
foreach (JsonElement cealHostDomain in cealHostRule[0].EnumerateArray())
|
||||||
{
|
{
|
||||||
@ -511,7 +511,7 @@ public partial class MainWin : Window
|
|||||||
|
|
||||||
string[] cealHostDomainPair = cealHostDomain.ToString().Split('^', 2);
|
string[] cealHostDomainPair = cealHostDomain.ToString().Split('^', 2);
|
||||||
|
|
||||||
cealHostDomainPairs.Add((cealHostDomainPair[0], cealHostDomainPair.Length == 2 ? cealHostDomainPair[1] : string.Empty));
|
cealHostDomainPairs.Add((cealHostDomainPair[0].Trim(), cealHostDomainPair.Length == 2 ? cealHostDomainPair[1].Trim() : string.Empty));
|
||||||
}
|
}
|
||||||
|
|
||||||
CealHostRulesDict[cealHostName].Add((cealHostDomainPairs, cealHostSni, cealHostIp));
|
CealHostRulesDict[cealHostName].Add((cealHostDomainPairs, cealHostSni, cealHostIp));
|
||||||
@ -594,7 +594,8 @@ public partial class MainWin : Window
|
|||||||
if (cealHostIncludeDomain.StartsWith('#'))
|
if (cealHostIncludeDomain.StartsWith('#'))
|
||||||
continue;
|
continue;
|
||||||
|
|
||||||
serverName += "^" + (!string.IsNullOrWhiteSpace(cealHostExcludeDomain) ? $"(?!{cealHostExcludeDomain.Replace(".", "\\.").Replace("*", ".*")})" : string.Empty) + cealHostIncludeDomain.TrimStart('$').Replace(".", "\\.").Replace("*", ".*") + "$|";
|
serverName += "^" + (!string.IsNullOrWhiteSpace(cealHostExcludeDomain) ? $"(?!{cealHostExcludeDomain.Replace(".", "\\.").Replace("*", ".*")})" : string.Empty) +
|
||||||
|
cealHostIncludeDomain.TrimStart('$').Replace(".", "\\.").Replace("*", ".*") + "$|";
|
||||||
}
|
}
|
||||||
|
|
||||||
NginxConfs = NginxConfs
|
NginxConfs = NginxConfs
|
||||||
|
Loading…
Reference in New Issue
Block a user