mirror of
https://github.com/SpaceTimee/Sheas-Cealer.git
synced 2025-07-14 05:12:09 +08:00
1.1.3 -> 1.1.4 第42次更新
This commit is contained in:
parent
4009e8ce63
commit
42bd83f4d3
@ -1,42 +1,43 @@
|
||||
using System.IO;
|
||||
using System.Security.Cryptography.X509Certificates;
|
||||
using System.Threading;
|
||||
using Sheas_Cealer.Consts;
|
||||
|
||||
namespace Sheas_Cealer.Utils
|
||||
{
|
||||
internal static class NginxStoppedCleaner
|
||||
{
|
||||
private static bool IsCleaning = false;
|
||||
private static readonly object IsCleaningLock = new();
|
||||
|
||||
internal static void Clean()
|
||||
{
|
||||
if (IsCleaning)
|
||||
if (!Monitor.TryEnter(IsCleaningLock))
|
||||
return;
|
||||
|
||||
IsCleaning = true;
|
||||
try
|
||||
{
|
||||
string hostsContent = File.ReadAllText(MainConst.HostsConfPath);
|
||||
int hostsConfStartIndex = hostsContent.IndexOf(MainConst.HostsConfStartMarker);
|
||||
int hostsConfEndIndex = hostsContent.LastIndexOf(MainConst.HostsConfEndMarker);
|
||||
|
||||
string hostsContent = File.ReadAllText(MainConst.HostsConfPath);
|
||||
int hostsConfStartIndex = hostsContent.IndexOf(MainConst.HostsConfStartMarker);
|
||||
int hostsConfEndIndex = hostsContent.LastIndexOf(MainConst.HostsConfEndMarker);
|
||||
if (hostsConfStartIndex != -1 && hostsConfEndIndex != -1)
|
||||
File.WriteAllText(MainConst.HostsConfPath, hostsContent.Remove(hostsConfStartIndex, hostsConfEndIndex - hostsConfStartIndex + MainConst.HostsConfEndMarker.Length));
|
||||
|
||||
if (hostsConfStartIndex != -1 && hostsConfEndIndex != -1)
|
||||
File.WriteAllText(MainConst.HostsConfPath, hostsContent.Remove(hostsConfStartIndex, hostsConfEndIndex - hostsConfStartIndex + MainConst.HostsConfEndMarker.Length));
|
||||
using X509Store certStore = new(StoreName.Root, StoreLocation.CurrentUser, OpenFlags.ReadWrite);
|
||||
|
||||
using X509Store certStore = new(StoreName.Root, StoreLocation.CurrentUser, OpenFlags.ReadWrite);
|
||||
foreach (X509Certificate2 storedCert in certStore.Certificates)
|
||||
if (storedCert.Subject == MainConst.NginxRootCertSubjectName)
|
||||
while (true)
|
||||
try
|
||||
{
|
||||
certStore.Remove(storedCert);
|
||||
break;
|
||||
}
|
||||
catch { }
|
||||
|
||||
foreach (X509Certificate2 storedCert in certStore.Certificates)
|
||||
if (storedCert.Subject == MainConst.NginxRootCertSubjectName)
|
||||
while (true)
|
||||
try
|
||||
{
|
||||
certStore.Remove(storedCert);
|
||||
break;
|
||||
}
|
||||
catch { }
|
||||
|
||||
certStore.Close();
|
||||
|
||||
IsCleaning = false;
|
||||
certStore.Close();
|
||||
}
|
||||
finally { Monitor.Exit(IsCleaningLock); }
|
||||
}
|
||||
}
|
||||
}
|
Loading…
Reference in New Issue
Block a user