Browse Source

Remove Mono.Posix.NETStandard

pull/5829/head
2dust 1 month ago
parent
commit
aa6b6e3849
  1. 31
      v2rayN/ServiceLib/Common/Utils.cs
  2. 1
      v2rayN/ServiceLib/ServiceLib.csproj

31
v2rayN/ServiceLib/Common/Utils.cs

@ -1,4 +1,6 @@
using System.Collections.Specialized;
using CliWrap;
using CliWrap.Buffered;
using System.Collections.Specialized;
using System.Diagnostics;
using System.IO.Compression;
using System.Net;
@ -863,7 +865,32 @@ namespace ServiceLib.Common
}
else
{
return Mono.Unix.Native.Syscall.geteuid() == 0;
var id = GetLinuxUserId().Result ?? "1000";
if (int.TryParse(id, out int userId))
{
return userId == 0;
}
else
{
return false;
}
}
}
private static async Task<string?> GetLinuxUserId()
{
try
{
var result = await Cli.Wrap("/bin/bash")
.WithArguments(["-c", "id -u"])
.WithValidation(CommandResultValidation.None)
.ExecuteBufferedAsync();
return result.StandardOutput.ToString();
}
catch
{
return null;
}
}

1
v2rayN/ServiceLib/ServiceLib.csproj

@ -9,7 +9,6 @@
<ItemGroup>
<PackageReference Include="Downloader" Version="3.2.1" />
<PackageReference Include="Mono.Posix.NETStandard" Version="1.0.0" />
<PackageReference Include="ReactiveUI" Version="20.1.63" />
<PackageReference Include="ReactiveUI.Fody" Version="19.5.41" />
<PackageReference Include="sqlite-net-pcl" Version="1.9.172" />

Loading…
Cancel
Save