diff --git a/README.md b/README.md index 57a73ec1..27e9741b 100644 --- a/README.md +++ b/README.md @@ -18,6 +18,8 @@ [![star](https://gitee.com/snltty/linker/badge/star.svg?theme=dark)](https://gitee.com/snltty/linker/stargazers) [![fork](https://gitee.com/snltty/linker/badge/fork.svg?theme=dark)](https://gitee.com/snltty/linker/members) +Linker.Tunnel 打洞库说明,在你的项目集成 + ## 简单说明 @@ -31,7 +33,7 @@ - [x] 打洞连接,客户端之间打洞连接,TCP打洞、MsQuic打洞 **tunnel** - 1. 默认msquic.dll win11+ 官方库说明,win10 请删除 msquic.dll,将 msquic-openssl.dll 更名为 msquic.dll + 1. 默认msquic.dll win11+ 官方说明,win10 请删除 msquic.dll,将 msquic-openssl.dll 更名为 msquic.dll 2. linux 请按官方说明安装msquic - [x] 中继连接,客户端之间通过服务器转发连接 **relay** diff --git a/linker.libs/BooleanHelper.cs b/linker.libs/BooleanHelper.cs index 5484475e..0b0495c5 100644 --- a/linker.libs/BooleanHelper.cs +++ b/linker.libs/BooleanHelper.cs @@ -1,4 +1,4 @@ -namespace linker.libs +namespace Linker.Libs { public static class BooleanHelper { diff --git a/linker.libs/CommandHelper.cs b/linker.libs/CommandHelper.cs index ed400914..7ee1fe89 100644 --- a/linker.libs/CommandHelper.cs +++ b/linker.libs/CommandHelper.cs @@ -1,7 +1,7 @@ using System.Diagnostics; using System.IO; -namespace linker.libs +namespace Linker.Libs { public sealed class CommandHelper { diff --git a/linker.libs/FireWallHelper.cs b/linker.libs/FireWallHelper.cs index 0d564622..7ff81521 100644 --- a/linker.libs/FireWallHelper.cs +++ b/linker.libs/FireWallHelper.cs @@ -1,7 +1,7 @@ using System; using System.IO; -namespace linker.libs +namespace Linker.Libs { public static class FireWallHelper { diff --git a/linker.libs/GCHelper.cs b/linker.libs/GCHelper.cs index 1c3deb1d..79f47766 100644 --- a/linker.libs/GCHelper.cs +++ b/linker.libs/GCHelper.cs @@ -2,7 +2,7 @@ using System.Diagnostics; using System.Runtime.InteropServices; -namespace linker.libs +namespace Linker.Libs { public static class GCHelper { diff --git a/linker.libs/Helper.cs b/linker.libs/Helper.cs index a7b044c0..1b358c18 100644 --- a/linker.libs/Helper.cs +++ b/linker.libs/Helper.cs @@ -3,7 +3,7 @@ using System.Runtime.InteropServices; using System.Threading; using System.Threading.Tasks; -namespace linker.libs +namespace Linker.Libs { public static class Helper { diff --git a/linker.libs/Logger.cs b/linker.libs/Logger.cs index 1e788759..2f9ee7dd 100644 --- a/linker.libs/Logger.cs +++ b/linker.libs/Logger.cs @@ -3,12 +3,12 @@ using System.Collections.Concurrent; using System.Threading; using System.Threading.Tasks; -namespace linker.libs +namespace Linker.Libs { - public sealed class Logger + public sealed class LoggerHelper { - private static readonly Lazy lazy = new Lazy(() => new Logger()); - public static Logger Instance => lazy.Value; + private static readonly Lazy lazy = new Lazy(() => new LoggerHelper()); + public static LoggerHelper Instance => lazy.Value; private readonly ConcurrentQueue queue = new ConcurrentQueue(); public Action OnLogger { get; set; } = (param) => { }; @@ -20,7 +20,7 @@ namespace linker.libs public LoggerTypes LoggerLevel { get; set; } = LoggerTypes.WARNING; #endif - private Logger() + private LoggerHelper() { Task.Factory.StartNew(async () => { diff --git a/linker.libs/NetworkHelper.cs b/linker.libs/NetworkHelper.cs index fcbc4ee2..d927fbc3 100644 --- a/linker.libs/NetworkHelper.cs +++ b/linker.libs/NetworkHelper.cs @@ -6,7 +6,7 @@ using System.Net.NetworkInformation; using System.Net.Sockets; using System.Text; -namespace linker.libs +namespace Linker.Libs { public static class NetworkHelper { diff --git a/linker.libs/NumberSpace.cs b/linker.libs/NumberSpace.cs index 47a3ecee..fe3f63e4 100644 --- a/linker.libs/NumberSpace.cs +++ b/linker.libs/NumberSpace.cs @@ -1,6 +1,6 @@ using System.Threading; -namespace linker.libs +namespace Linker.Libs { public sealed class NumberSpace { diff --git a/linker.libs/ReceiveDataBuffer.cs b/linker.libs/ReceiveDataBuffer.cs index 6af47e73..d46f6b26 100644 --- a/linker.libs/ReceiveDataBuffer.cs +++ b/linker.libs/ReceiveDataBuffer.cs @@ -1,6 +1,6 @@ using System; -namespace linker.libs +namespace Linker.Libs { public sealed class ReceiveDataBuffer { diff --git a/linker.libs/ReflectionHelper.cs b/linker.libs/ReflectionHelper.cs index 127af82b..0cd29fe6 100644 --- a/linker.libs/ReflectionHelper.cs +++ b/linker.libs/ReflectionHelper.cs @@ -3,7 +3,7 @@ using System.Collections.Generic; using System.Linq; using System.Reflection; -namespace linker.libs +namespace Linker.Libs { public sealed class ReflectionHelper { diff --git a/linker.libs/api/ApiServer.cs b/linker.libs/api/ApiServer.cs index 9dbe8a2c..d191f5ef 100644 --- a/linker.libs/api/ApiServer.cs +++ b/linker.libs/api/ApiServer.cs @@ -1,5 +1,5 @@ -using linker.libs.extends; -using linker.libs.websocket; +using Linker.Libs.Extends; +using Linker.Libs.Websocket; using System; using System.Buffers; using System.Collections.Concurrent; @@ -11,7 +11,7 @@ using System.Text.Json; using System.Threading; using System.Threading.Tasks; -namespace linker.libs.api +namespace Linker.Libs.Api { /// /// 前段接口服务 @@ -42,7 +42,7 @@ namespace linker.libs.api } catch (Exception ex) { - Logger.Instance.Error(ex); + LoggerHelper.Instance.Error(ex); } server.OnConnecting = (connection, header) => { @@ -134,7 +134,7 @@ namespace linker.libs.api } catch (Exception ex) { - Logger.Instance.Error(ex); + LoggerHelper.Instance.Error(ex); return new ApiControllerResponseInfo { Content = ex.Message, @@ -175,7 +175,7 @@ namespace linker.libs.api } catch (Exception ex) { - Logger.Instance.Error(ex); + LoggerHelper.Instance.Error(ex); } } } @@ -222,7 +222,7 @@ namespace linker.libs.api } catch (Exception) { - //Logger.Instance.Error(ex); + //LoggerHelper.Instance.Error(ex); } } } @@ -251,7 +251,7 @@ namespace linker.libs.api } catch (Exception) { - //Logger.Instance.Error(ex); + //LoggerHelper.Instance.Error(ex); } } } diff --git a/linker.libs/api/IApiController.cs b/linker.libs/api/IApiController.cs index 9a4553f5..3af4dc5b 100644 --- a/linker.libs/api/IApiController.cs +++ b/linker.libs/api/IApiController.cs @@ -1,8 +1,8 @@ -using linker.libs.websocket; +using Linker.Libs.Websocket; using System; using System.Text.Json.Serialization; -namespace linker.libs.api +namespace Linker.Libs.Api { /// /// 前段接口 diff --git a/linker.libs/api/IApiServer.cs b/linker.libs/api/IApiServer.cs index 2e626557..f69e37c8 100644 --- a/linker.libs/api/IApiServer.cs +++ b/linker.libs/api/IApiServer.cs @@ -1,7 +1,7 @@ -using linker.libs.websocket; +using Linker.Libs.Websocket; using System; -namespace linker.libs.api +namespace Linker.Libs.Api { /// /// 前端接口服务 diff --git a/linker.libs/extends/IPEndPointExtends.cs b/linker.libs/extends/IPEndPointExtends.cs index 12b4cdb7..848f0ce7 100644 --- a/linker.libs/extends/IPEndPointExtends.cs +++ b/linker.libs/extends/IPEndPointExtends.cs @@ -3,7 +3,7 @@ using System.Buffers.Binary; using System.Linq; using System.Net; -namespace linker.libs.extends +namespace Linker.Libs.Extends { public static class IPEndPointExtends { diff --git a/linker.libs/extends/NumberExtends.cs b/linker.libs/extends/NumberExtends.cs index 3b58b156..fc39f59d 100644 --- a/linker.libs/extends/NumberExtends.cs +++ b/linker.libs/extends/NumberExtends.cs @@ -2,7 +2,7 @@ using System.Runtime.CompilerServices; using System.Runtime.InteropServices; -namespace linker.libs.extends +namespace Linker.Libs.Extends { public static class NumberExtends { diff --git a/linker.libs/extends/SerialzeExtends.cs b/linker.libs/extends/SerialzeExtends.cs index 28e7b506..8241d453 100644 --- a/linker.libs/extends/SerialzeExtends.cs +++ b/linker.libs/extends/SerialzeExtends.cs @@ -1,8 +1,8 @@ -using linker.libs.jsonConverters; +using Linker.Libs.JsonConverters; using System.Text.Json; using System.Text.Unicode; -namespace linker.libs.extends +namespace Linker.Libs.Extends { public static class SerialzeExtends { diff --git a/linker.libs/extends/SocketExtends.cs b/linker.libs/extends/SocketExtends.cs index b04f7895..5a4a2247 100644 --- a/linker.libs/extends/SocketExtends.cs +++ b/linker.libs/extends/SocketExtends.cs @@ -3,7 +3,7 @@ using System.Net; using System.Net.Sockets; using System.Runtime.InteropServices; -namespace linker.libs.extends +namespace Linker.Libs.Extends { public static class SocketExtends { diff --git a/linker.libs/extends/StringExtends.cs b/linker.libs/extends/StringExtends.cs index 7243ee9d..93979cfc 100644 --- a/linker.libs/extends/StringExtends.cs +++ b/linker.libs/extends/StringExtends.cs @@ -5,7 +5,7 @@ using System.Security.Cryptography; using System.Text; using System.Text.Unicode; -namespace linker.libs.extends +namespace Linker.Libs.Extends { /// /// | Method | Mean | Error | StdDev | Median | Rank | Gen0 | Allocated | diff --git a/linker.libs/jsonConverters/DateTimeConverter.cs b/linker.libs/jsonConverters/DateTimeConverter.cs index e7618564..b42c31d2 100644 --- a/linker.libs/jsonConverters/DateTimeConverter.cs +++ b/linker.libs/jsonConverters/DateTimeConverter.cs @@ -2,7 +2,7 @@ using System.Text.Json.Serialization; using System.Text.Json; -namespace linker.libs.jsonConverters +namespace Linker.Libs.JsonConverters { public sealed class DateTimeConverter : JsonConverter { diff --git a/linker.libs/jsonConverters/IPAddressJsonConverter.cs b/linker.libs/jsonConverters/IPAddressJsonConverter.cs index 09b106ff..2d10f774 100644 --- a/linker.libs/jsonConverters/IPAddressJsonConverter.cs +++ b/linker.libs/jsonConverters/IPAddressJsonConverter.cs @@ -3,7 +3,7 @@ using System.Net; using System.Text.Json; using System.Text.Json.Serialization; -namespace linker.libs.jsonConverters +namespace Linker.Libs.JsonConverters { public sealed class IPAddressJsonConverter : JsonConverter { diff --git a/linker.libs/jsonConverters/IPEndpointJsonConverter.cs b/linker.libs/jsonConverters/IPEndpointJsonConverter.cs index 5d9287a8..90dca074 100644 --- a/linker.libs/jsonConverters/IPEndpointJsonConverter.cs +++ b/linker.libs/jsonConverters/IPEndpointJsonConverter.cs @@ -3,7 +3,7 @@ using System.Net; using System.Text.Json; using System.Text.Json.Serialization; -namespace linker.libs.jsonConverters +namespace Linker.Libs.JsonConverters { public sealed class IPEndpointJsonConverter : JsonConverter { diff --git a/linker.libs/linker.libs.csproj b/linker.libs/linker.libs.csproj index 2063ec8d..c927e3ac 100644 --- a/linker.libs/linker.libs.csproj +++ b/linker.libs/linker.libs.csproj @@ -7,13 +7,13 @@ true Debug;Release true - linker libs + Linker libs snltty snltty - linker libs + Linker libs snltty - https://github.com/snltty/linker - https://github.com/snltty/linker + https://github.com/snltty/Linker + https://github.com/snltty/Linker 1.1.0 1.1.0.1 1.1.0.1 diff --git a/linker.libs/socks5/Socks5Enum.cs b/linker.libs/socks5/Socks5Enum.cs index 54ce9c43..3eb00649 100644 --- a/linker.libs/socks5/Socks5Enum.cs +++ b/linker.libs/socks5/Socks5Enum.cs @@ -1,6 +1,6 @@ using System; -namespace linker.libs.socks5 +namespace Linker.Libs.Socks5 { /// /// 数据验证结果 diff --git a/linker.libs/socks5/Socks5Parser.cs b/linker.libs/socks5/Socks5Parser.cs index 55edf167..f625eded 100644 --- a/linker.libs/socks5/Socks5Parser.cs +++ b/linker.libs/socks5/Socks5Parser.cs @@ -1,11 +1,11 @@ -using linker.libs.extends; +using Linker.Libs.Extends; using System; using System.Buffers; using System.Buffers.Binary; using System.Net; using System.Text; -namespace linker.libs.socks5 +namespace Linker.Libs.Socks5 { /// /// socks5 数据包解析和组装 diff --git a/linker.libs/web/IWebServer.cs b/linker.libs/web/IWebServer.cs index 9a586ea6..34e4103e 100644 --- a/linker.libs/web/IWebServer.cs +++ b/linker.libs/web/IWebServer.cs @@ -1,4 +1,4 @@ -namespace linker.libs.web +namespace Linker.Libs.Web { /// /// web服务 diff --git a/linker.libs/web/WebServer.cs b/linker.libs/web/WebServer.cs index 9ed71df6..d672f8e7 100644 --- a/linker.libs/web/WebServer.cs +++ b/linker.libs/web/WebServer.cs @@ -4,7 +4,7 @@ using System.IO; using System.Net; using System.Threading.Tasks; -namespace linker.libs.web +namespace Linker.Libs.Web { /// /// 本地web管理端服务器 @@ -35,7 +35,7 @@ namespace linker.libs.web } catch (Exception ex) { - Logger.Instance.Error(ex); + LoggerHelper.Instance.Error(ex); } }, TaskCreationOptions.LongRunning); } diff --git a/linker.libs/websocket/WebSocketClient.cs b/linker.libs/websocket/WebSocketClient.cs index e69e1bff..f97a7af6 100644 --- a/linker.libs/websocket/WebSocketClient.cs +++ b/linker.libs/websocket/WebSocketClient.cs @@ -1,11 +1,10 @@ -using linker.libs; -using linker.libs.extends; +using Linker.Libs.Extends; using System; using System.Collections.Generic; using System.Net; using System.Net.Sockets; -namespace linker.libs.websocket +namespace Linker.Libs.Websocket { /// /// wensocket客户端 @@ -158,8 +157,8 @@ namespace linker.libs.websocket } catch (Exception ex) { - if (Logger.Instance.LoggerLevel <= LoggerTypes.DEBUG) - Logger.Instance.Error(ex); + if (LoggerHelper.Instance.LoggerLevel <= LoggerTypes.DEBUG) + LoggerHelper.Instance.Error(ex); OnConnectFail(ex.Message); } } @@ -187,8 +186,8 @@ namespace linker.libs.websocket } catch (Exception ex) { - if (Logger.Instance.LoggerLevel <= LoggerTypes.DEBUG) - Logger.Instance.Error(ex); + if (LoggerHelper.Instance.LoggerLevel <= LoggerTypes.DEBUG) + LoggerHelper.Instance.Error(ex); } } private void TargetProcessReceive() @@ -232,8 +231,8 @@ namespace linker.libs.websocket catch (Exception ex) { CloseClientSocket(); - if (Logger.Instance.LoggerLevel <= LoggerTypes.DEBUG) - Logger.Instance.Error(ex); + if (LoggerHelper.Instance.LoggerLevel <= LoggerTypes.DEBUG) + LoggerHelper.Instance.Error(ex); } } diff --git a/linker.libs/websocket/WebSocketParser.cs b/linker.libs/websocket/WebSocketParser.cs index 6aff9f0e..0fbcfd4b 100644 --- a/linker.libs/websocket/WebSocketParser.cs +++ b/linker.libs/websocket/WebSocketParser.cs @@ -1,12 +1,11 @@ -using linker.libs; -using System; +using System; using System.Buffers; using System.Buffers.Binary; using System.Net; using System.Security.Cryptography; using System.Text; -namespace linker.libs.websocket +namespace Linker.Libs.Websocket { /// /// websocket解析器 diff --git a/linker.libs/websocket/WebSocketServer.cs b/linker.libs/websocket/WebSocketServer.cs index d8e00577..afde7180 100644 --- a/linker.libs/websocket/WebSocketServer.cs +++ b/linker.libs/websocket/WebSocketServer.cs @@ -1,5 +1,4 @@ -using linker.libs; -using linker.libs.extends; +using Linker.Libs.Extends; using System; using System.Collections.Concurrent; using System.Collections.Generic; @@ -8,7 +7,7 @@ using System.Net; using System.Net.Sockets; using System.Text; -namespace linker.libs.websocket +namespace Linker.Libs.Websocket { /// /// websocket服务端 @@ -131,7 +130,7 @@ namespace linker.libs.websocket } catch (Exception ex) { - Logger.Instance.Error(ex); + LoggerHelper.Instance.Error(ex); } } private void ProcessAccept(SocketAsyncEventArgs e) diff --git a/linker.libs/winapis/ADVAPI32.cs b/linker.libs/winapis/ADVAPI32.cs index e67d065a..be9351eb 100644 --- a/linker.libs/winapis/ADVAPI32.cs +++ b/linker.libs/winapis/ADVAPI32.cs @@ -3,7 +3,7 @@ using System.Runtime.InteropServices; using System.Security; using System.Text; -namespace linker.libs.winapis; +namespace Linker.Libs.Winapis; public static unsafe class ADVAPI32 { diff --git a/linker.libs/winapis/GDI32.cs b/linker.libs/winapis/GDI32.cs index ef050c18..804f05a6 100644 --- a/linker.libs/winapis/GDI32.cs +++ b/linker.libs/winapis/GDI32.cs @@ -1,7 +1,7 @@ using System; using System.Runtime.InteropServices; -namespace linker.libs.winapis; +namespace Linker.Libs.Winapis; public static class GDI32 { diff --git a/linker.libs/winapis/Kernel32.cs b/linker.libs/winapis/Kernel32.cs index 4dd21bec..ee3fd261 100644 --- a/linker.libs/winapis/Kernel32.cs +++ b/linker.libs/winapis/Kernel32.cs @@ -4,7 +4,7 @@ using System.Net; using System.Reflection.Metadata; using System.Runtime.InteropServices; -namespace linker.libs.winapis; +namespace Linker.Libs.Winapis; public static unsafe class Kernel32 { diff --git a/linker.libs/winapis/MSvcrt.cs b/linker.libs/winapis/MSvcrt.cs index c14c28d5..523286b7 100644 --- a/linker.libs/winapis/MSvcrt.cs +++ b/linker.libs/winapis/MSvcrt.cs @@ -5,7 +5,7 @@ using System.Runtime.InteropServices; using System.Text; using System.Threading.Tasks; -namespace linker.libs.winapis +namespace Linker.Libs.Winapis { public static class MSvcrt { diff --git a/linker.libs/winapis/NetApi32.cs b/linker.libs/winapis/NetApi32.cs index 8732bc9f..b3cd7b03 100644 --- a/linker.libs/winapis/NetApi32.cs +++ b/linker.libs/winapis/NetApi32.cs @@ -2,7 +2,7 @@ using System.Runtime.InteropServices; using System.Text; -namespace linker.libs.winapis +namespace Linker.Libs.Winapis { public static class NetApi32 { diff --git a/linker.libs/winapis/Powrprof.cs b/linker.libs/winapis/Powrprof.cs index 09f05679..74fd4ba5 100644 --- a/linker.libs/winapis/Powrprof.cs +++ b/linker.libs/winapis/Powrprof.cs @@ -1,7 +1,7 @@ using System; using System.Runtime.InteropServices; -namespace linker.libs.winapis +namespace Linker.Libs.Winapis { internal class Powrprof { diff --git a/linker.libs/winapis/SECUR32.cs b/linker.libs/winapis/SECUR32.cs index a143ed19..0d4fec72 100644 --- a/linker.libs/winapis/SECUR32.cs +++ b/linker.libs/winapis/SECUR32.cs @@ -4,7 +4,7 @@ using System.Runtime.InteropServices; using System.Runtime.Versioning; -namespace linker.libs.winapis; +namespace Linker.Libs.Winapis; public static class SECUR32 { diff --git a/linker.libs/winapis/Shlwapi.cs b/linker.libs/winapis/Shlwapi.cs index fbc09290..d2579b27 100644 --- a/linker.libs/winapis/Shlwapi.cs +++ b/linker.libs/winapis/Shlwapi.cs @@ -1,6 +1,6 @@ using System.Runtime.InteropServices; -namespace linker.libs.winapis; +namespace Linker.Libs.Winapis; // https://docs.microsoft.com/en-us/windows/win32/api/shlwapi/nf-shlwapi-isos public class Shlwapi diff --git a/linker.libs/winapis/User32.cs b/linker.libs/winapis/User32.cs index fec3abea..e15ef15d 100644 --- a/linker.libs/winapis/User32.cs +++ b/linker.libs/winapis/User32.cs @@ -3,7 +3,7 @@ using System; using System.Runtime.InteropServices; using System.Text; -namespace linker.libs.winapis; +namespace Linker.Libs.Winapis; public static class User32 { diff --git a/linker.libs/winapis/WTSAPI32.cs b/linker.libs/winapis/WTSAPI32.cs index 0e84dff5..eb008dce 100644 --- a/linker.libs/winapis/WTSAPI32.cs +++ b/linker.libs/winapis/WTSAPI32.cs @@ -2,7 +2,7 @@ using System.Runtime.InteropServices; using System.Security; -namespace linker.libs.winapis; +namespace Linker.Libs.Winapis; public static class WTSAPI32 { diff --git a/linker.libs/winapis/Win32Interop.cs b/linker.libs/winapis/Win32Interop.cs index d6e51e9c..a94d6fa8 100644 --- a/linker.libs/winapis/Win32Interop.cs +++ b/linker.libs/winapis/Win32Interop.cs @@ -1,4 +1,4 @@ -using linker.libs.winapis; +using Linker.Libs.Winapis; using System; using System.Collections.Generic; using System.Diagnostics; @@ -10,13 +10,13 @@ using System.Runtime.Serialization; using System.Security.Principal; using System.Text; using System.Threading.Tasks; -using static linker.libs.winapis.WTSAPI32; -using static linker.libs.winapis.ADVAPI32; -using static linker.libs.winapis.Kernel32; -using static linker.libs.winapis.NetApi32; -using static linker.libs.winapis.User32; +using static Linker.Libs.Winapis.WTSAPI32; +using static Linker.Libs.Winapis.ADVAPI32; +using static Linker.Libs.Winapis.Kernel32; +using static Linker.Libs.Winapis.NetApi32; +using static Linker.Libs.Winapis.User32; -namespace linker.libs.winapis +namespace Linker.Libs.Winapis { public class Win32Interop { @@ -113,22 +113,22 @@ namespace linker.libs.winapis nint inputDesktop = OpenInputDesktop(); if (inputDesktop == nint.Zero) { - if (Logger.Instance.LoggerLevel <= LoggerTypes.DEBUG) - Logger.Instance.Error($"OpenInputDesktop fail"); + if (LoggerHelper.Instance.LoggerLevel <= LoggerTypes.DEBUG) + LoggerHelper.Instance.Error($"OpenInputDesktop fail"); return false; } bool result = SetThreadDesktop(inputDesktop); if (result == false) { - if (Logger.Instance.LoggerLevel <= LoggerTypes.DEBUG) - Logger.Instance.Error($"SetThreadDesktop fail"); + if (LoggerHelper.Instance.LoggerLevel <= LoggerTypes.DEBUG) + LoggerHelper.Instance.Error($"SetThreadDesktop fail"); } result &= SwitchDesktop(inputDesktop); if (result == false) { - if (Logger.Instance.LoggerLevel <= LoggerTypes.DEBUG) - Logger.Instance.Error($"SwitchDesktop fail"); + if (LoggerHelper.Instance.LoggerLevel <= LoggerTypes.DEBUG) + LoggerHelper.Instance.Error($"SwitchDesktop fail"); } lastInputDesktop = inputDesktop; @@ -136,9 +136,9 @@ namespace linker.libs.winapis } catch (Exception ex) { - if (Logger.Instance.LoggerLevel <= LoggerTypes.DEBUG) + if (LoggerHelper.Instance.LoggerLevel <= LoggerTypes.DEBUG) { - Logger.Instance.Error(ex); + LoggerHelper.Instance.Error(ex); } return false; } @@ -248,7 +248,7 @@ namespace linker.libs.winapis } catch(Exception ex) { - Logger.Instance.Debug($"CreateInteractiveSystemProcess {ex}"); + LoggerHelper.Instance.Debug($"CreateInteractiveSystemProcess {ex}"); } } diff --git a/linker.libs/winapis/Wininet.cs b/linker.libs/winapis/Wininet.cs index 50ef56e5..e3a8f8be 100644 --- a/linker.libs/winapis/Wininet.cs +++ b/linker.libs/winapis/Wininet.cs @@ -5,7 +5,7 @@ using System.Linq; using System.Net; using System.Runtime.InteropServices; -namespace linker.libs.winapis +namespace Linker.Libs.Winapis { public static class Wininet { diff --git a/linker.libs/winapis/Wlanapi.cs b/linker.libs/winapis/Wlanapi.cs index e4adf521..cc0813d0 100644 --- a/linker.libs/winapis/Wlanapi.cs +++ b/linker.libs/winapis/Wlanapi.cs @@ -5,7 +5,7 @@ using System.Runtime.InteropServices; using System.Text; using System.Threading.Tasks; -namespace linker.libs.winapis +namespace Linker.Libs.Winapis { public static class Wlanapi { diff --git a/linker.service/LinkService.Designer.cs b/linker.service/LinkerService.Designer.cs similarity index 94% rename from linker.service/LinkService.Designer.cs rename to linker.service/LinkerService.Designer.cs index 024989f0..6e4e953a 100644 --- a/linker.service/LinkService.Designer.cs +++ b/linker.service/LinkerService.Designer.cs @@ -1,6 +1,6 @@ -namespace linker.service +namespace Linker.Service { - partial class LinkService + partial class LinkerService { /// /// 必需的设计器变量。 diff --git a/linker.service/LinkService.cs b/linker.service/LinkerService.cs similarity index 94% rename from linker.service/LinkService.cs rename to linker.service/LinkerService.cs index ffbe6cca..d088c718 100644 --- a/linker.service/LinkService.cs +++ b/linker.service/LinkerService.cs @@ -1,18 +1,18 @@ using System.Diagnostics; using System.ServiceProcess; -namespace linker.service +namespace Linker.Service { - partial class LinkService : ServiceBase + partial class LinkerService : ServiceBase { private readonly string[] args; - public LinkService(string[] args) + public LinkerService(string[] args) { this.args = args; InitializeComponent(); } - private string mainExeName = "linker"; + private string mainExeName = "Linker"; private CancellationTokenSource cancellationTokenSource = new CancellationTokenSource(); protected override void OnStart(string[] _args) diff --git a/linker.service/Program.cs b/linker.service/Program.cs index e2570a9c..55b1aab8 100644 --- a/linker.service/Program.cs +++ b/linker.service/Program.cs @@ -1,6 +1,6 @@ using System.ServiceProcess; -namespace linker.service +namespace Linker.Service { internal class Program { @@ -15,7 +15,7 @@ namespace linker.service ServiceBase[] ServicesToRun; ServicesToRun = new ServiceBase[] { - new LinkService(args) + new LinkerService(args) }; ServiceBase.Run(ServicesToRun); } diff --git a/linker.service/linker.service.csproj.user b/linker.service/linker.service.csproj.user index 2ba2d3e9..b1f6f9e9 100644 --- a/linker.service/linker.service.csproj.user +++ b/linker.service/linker.service.csproj.user @@ -4,7 +4,7 @@ <_LastSelectedProfileId>D:\desktop\cmonitor\cmonitor.sas.service\Properties\PublishProfiles\FolderProfile.pubxml - + Component diff --git a/linker.sln b/linker.sln index 2d2273fc..ca4f169a 100644 --- a/linker.sln +++ b/linker.sln @@ -3,15 +3,15 @@ Microsoft Visual Studio Solution File, Format Version 12.00 # Visual Studio Version 17 VisualStudioVersion = 17.4.33110.190 MinimumVisualStudioVersion = 10.0.40219.1 -Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "linker", "linker\linker.csproj", "{267DE8BE-F91C-4CCB-9D58-D33FDA661126}" +Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Linker", "Linker\Linker.csproj", "{267DE8BE-F91C-4CCB-9D58-D33FDA661126}" EndProject -Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "linker.libs", "linker.libs\linker.libs.csproj", "{00EECF97-99EB-4B12-AAEF-ED2363914275}" +Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Linker.Libs", "Linker.libs\Linker.Libs.csproj", "{00EECF97-99EB-4B12-AAEF-ED2363914275}" EndProject -Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "linker.tests", "linker.tests\linker.tests.csproj", "{04AA3054-5350-4D8B-97F6-31495AE0609D}" +Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Linker.Tests", "Linker.tests\Linker.Tests.csproj", "{04AA3054-5350-4D8B-97F6-31495AE0609D}" EndProject -Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "linker.service", "linker.service\linker.service.csproj", "{E8AB5039-3A42-424F-AAEC-A102C8CAA305}" +Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Linker.Service", "Linker.service\Linker.Service.csproj", "{E8AB5039-3A42-424F-AAEC-A102C8CAA305}" EndProject -Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "linker.tunnel", "linker.tunnel\linker.tunnel.csproj", "{AFADE8D6-AB00-456B-9F43-53BC95B7B608}" +Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Linker.Tunnel", "Linker.tunnel\Linker.Tunnel.csproj", "{AFADE8D6-AB00-456B-9F43-53BC95B7B608}" EndProject Global GlobalSection(SolutionConfigurationPlatforms) = preSolution diff --git a/linker.tests/MemoryPackIPEndPointSerialize.cs b/linker.tests/MemoryPackIPEndPointSerialize.cs index 25ffd67d..c62fab77 100644 --- a/linker.tests/MemoryPackIPEndPointSerialize.cs +++ b/linker.tests/MemoryPackIPEndPointSerialize.cs @@ -1,10 +1,10 @@ -using linker.serializes; -using linker.tunnel.connection; -using linker.tunnel.transport; +using Linker.Serializes; +using Linker.Tunnel.Connection; +using Linker.Tunnel.Transport; using MemoryPack; using System.Net; -namespace linker.tests +namespace Linker.Tests { [TestClass] public class MemoryPackIPEndPointSerialize diff --git a/linker.tests/linker.tests.csproj b/linker.tests/linker.tests.csproj index bcc2a02f..ecdb24ed 100644 --- a/linker.tests/linker.tests.csproj +++ b/linker.tests/linker.tests.csproj @@ -19,7 +19,7 @@ - + diff --git a/linker.tunnel/README.md b/linker.tunnel/README.md new file mode 100644 index 00000000..df33beb9 --- /dev/null +++ b/linker.tunnel/README.md @@ -0,0 +1,61 @@ + +## Linker.Tunnel 打洞库说明 + +### 说明 +你需要自己实现信标服务器,用于交换打洞信息 + +``` +nuget 安装 Linker.Tunnel +``` + +### 1、初始化 +``` +//实现你的适配器 +ITunnelAdapter tunnelAdapter = new MyTunnelAdapter(); + +//获取外网端口类列表 +List tunnelWanPorts = new List{ + new TunnelWanPortLinker(), //这是 linker项目的获取外网IP端口的类,你可以实现你自己的类 + new MyTunnelWanPort() //你自己实现的类 +}; +//创建一个获取外网端口处理器 +TunnelWanPortTransfer tunnelWanPortTransfer = new TunnelWanPortTransfer(); +tunnelWanPortTransfer.Init(tunnelAdapter,tunnelWanPorts); + +//打洞协议列表 +List transports = new List{ + new TransportMsQuic(), //内置的QUIC + new TransportTcpNutssb() //内置的TCP +}; +//创建一个打洞处理器 +TunnelTransfer tunnelTransfer = new TunnelTransfer(); +tunnelTransfer.Init(tunnelAdapter); +``` + +### 2、监听打洞成功事件 +``` +//监听打洞成功事件 +tunnelTransfer.SetConnectedCallback("你的事务名",Action callback); +//移除打洞成功事件 +tunnelTransfer.RemoveConnectedCallback("你的事务名",Action callback) +``` + + +### 3、打洞 +``` + +//会通过 ITunnelAdapter.SendConnectBegin 发送给对方,你需要实现这个方法 +tunnelTransfer.ConnectAsync("对方的名字或编号,你自己定,取决于的你信标服务器实现","事务名"); + +//对方收到消息,你应该调用 +tunnelTransfer.OnBegin(); + +//打洞失败则会调用 ITunnelAdapter.SendConnectFail 发送给对方,你需要实现这个方法 +//对方收到消息,你应该调用 +tunnelTransfer.OnFail(); + +//打洞成功则会调用 ITunnelAdapter.SendConnectSuccess 发送给对方,你需要实现这个方法 +//对方收到消息,你应该调用 +tunnelTransfer.OnSuccess(); + +``` diff --git a/linker.tunnel/TunnelTransfer.cs b/linker.tunnel/TunnelTransfer.cs index 62b18166..40a9154a 100644 --- a/linker.tunnel/TunnelTransfer.cs +++ b/linker.tunnel/TunnelTransfer.cs @@ -1,14 +1,14 @@ -using linker.tunnel.adapter; -using linker.tunnel.connection; -using linker.tunnel.transport; -using linker.libs; -using linker.libs.extends; +using Linker.Tunnel.Adapter; +using Linker.Tunnel.Connection; +using Linker.Tunnel.Transport; +using Linker.Libs; +using Linker.Libs.Extends; using System.Collections.Concurrent; using System.Net.Sockets; using System.Net; -using linker.tunnel.wanport; +using Linker.Tunnel.WanPort; -namespace linker.tunnel +namespace Linker.Tunnel { public sealed class TunnelTransfer { @@ -19,10 +19,8 @@ namespace linker.tunnel private ConcurrentDictionary connectingDic = new ConcurrentDictionary(); private Dictionary>> OnConnected { get; } = new Dictionary>>(); - public TunnelTransfer(TunnelWanPortTransfer compactTransfer, ITunnelAdapter tunnelAdapter) + public TunnelTransfer() { - this.compactTransfer = compactTransfer; - this.tunnelAdapter = tunnelAdapter; } /// @@ -52,8 +50,8 @@ namespace linker.tunnel tunnelAdapter.SetTunnelTransports(transportItems); - Logger.Instance.Warning($"load tunnel transport:{string.Join(",", transports.Select(c => c.Name))}"); - Logger.Instance.Warning($"used tunnel transport:{string.Join(",", transportItems.Where(c => c.Disabled == false).Select(c => c.Name))}"); + LoggerHelper.Instance.Warning($"load tunnel transport:{string.Join(",", transports.Select(c => c.Name))}"); + LoggerHelper.Instance.Warning($"used tunnel transport:{string.Join(",", transportItems.Where(c => c.Disabled == false).Select(c => c.Name))}"); } @@ -116,18 +114,18 @@ namespace linker.tunnel TunnelTransportWanPortInfo localInfo = await GetLocalInfo(); if (localInfo == null) { - Logger.Instance.Error($"tunnel {transport.Name} get local external ip fail "); + LoggerHelper.Instance.Error($"tunnel {transport.Name} get local external ip fail "); break; } - Logger.Instance.Info($"tunnel {transport.Name} got local external ip {localInfo.ToJson()}"); + LoggerHelper.Instance.Info($"tunnel {transport.Name} got local external ip {localInfo.ToJson()}"); //获取对方的外网ip TunnelTransportWanPortInfo remoteInfo = await tunnelAdapter.GetRemoteWanPort(remoteMachineId); if (remoteInfo == null) { - Logger.Instance.Error($"tunnel {transport.Name} get remote {remoteMachineId} external ip fail "); + LoggerHelper.Instance.Error($"tunnel {transport.Name} get remote {remoteMachineId} external ip fail "); break; } - Logger.Instance.Info($"tunnel {transport.Name} got remote external ip {remoteInfo.ToJson()}"); + LoggerHelper.Instance.Info($"tunnel {transport.Name} got remote external ip {remoteInfo.ToJson()}"); tunnelTransportInfo = new TunnelTransportInfo { @@ -150,9 +148,9 @@ namespace linker.tunnel } catch (Exception ex) { - if (Logger.Instance.LoggerLevel <= LoggerTypes.DEBUG) + if (LoggerHelper.Instance.LoggerLevel <= LoggerTypes.DEBUG) { - Logger.Instance.Error(ex); + LoggerHelper.Instance.Error(ex); } } } @@ -164,9 +162,9 @@ namespace linker.tunnel } catch (Exception ex) { - if (Logger.Instance.LoggerLevel <= LoggerTypes.DEBUG) + if (LoggerHelper.Instance.LoggerLevel <= LoggerTypes.DEBUG) { - Logger.Instance.Error(ex); + LoggerHelper.Instance.Error(ex); } } finally @@ -206,9 +204,9 @@ namespace linker.tunnel catch (Exception ex) { connectingDic.TryRemove(tunnelTransportInfo.Remote.MachineId, out _); - if (Logger.Instance.LoggerLevel <= LoggerTypes.DEBUG) + if (LoggerHelper.Instance.LoggerLevel <= LoggerTypes.DEBUG) { - Logger.Instance.Error(ex); + LoggerHelper.Instance.Error(ex); } } } @@ -269,13 +267,13 @@ namespace linker.tunnel private void OnConnecting(TunnelTransportInfo tunnelTransportInfo) { - //if (Logger.Instance.LoggerLevel <= LoggerTypes.DEBUG) - Logger.Instance.Info($"tunnel connecting {tunnelTransportInfo.Remote.MachineId}->{tunnelTransportInfo.Remote.MachineName},{tunnelTransportInfo.ToJson()}"); + //if (LoggerHelper.Instance.LoggerLevel <= LoggerTypes.DEBUG) + LoggerHelper.Instance.Info($"tunnel connecting {tunnelTransportInfo.Remote.MachineId}->{tunnelTransportInfo.Remote.MachineName},{tunnelTransportInfo.ToJson()}"); } private void OnConnectBegin(TunnelTransportInfo tunnelTransportInfo) { - //if (Logger.Instance.LoggerLevel <= LoggerTypes.DEBUG) - Logger.Instance.Info($"tunnel connecting from {tunnelTransportInfo.Remote.MachineId}->{tunnelTransportInfo.Remote.MachineName},{tunnelTransportInfo.ToJson()}"); + //if (LoggerHelper.Instance.LoggerLevel <= LoggerTypes.DEBUG) + LoggerHelper.Instance.Info($"tunnel connecting from {tunnelTransportInfo.Remote.MachineId}->{tunnelTransportInfo.Remote.MachineName},{tunnelTransportInfo.ToJson()}"); } /// @@ -284,8 +282,8 @@ namespace linker.tunnel /// private void _OnConnected(ITunnelConnection connection) { - //if (Logger.Instance.LoggerLevel <= LoggerTypes.DEBUG) - Logger.Instance.Debug($"tunnel connect {connection.RemoteMachineId}->{connection.RemoteMachineName} success->{connection.IPEndPoint},{connection.ToJsonFormat()}"); + //if (LoggerHelper.Instance.LoggerLevel <= LoggerTypes.DEBUG) + LoggerHelper.Instance.Debug($"tunnel connect {connection.RemoteMachineId}->{connection.RemoteMachineName} success->{connection.IPEndPoint},{connection.ToJsonFormat()}"); //调用以下别人注册的回调 if (OnConnected.TryGetValue(Helper.GlobalString, out List> callbacks)) @@ -305,7 +303,7 @@ namespace linker.tunnel } private void OnConnectFail(TunnelTransportInfo tunnelTransportInfo) { - Logger.Instance.Error($"tunnel connect {tunnelTransportInfo.Remote.MachineId} fail->{tunnelTransportInfo.ToJsonFormat()}"); + LoggerHelper.Instance.Error($"tunnel connect {tunnelTransportInfo.Remote.MachineId} fail->{tunnelTransportInfo.ToJsonFormat()}"); } private void ParseRemoteEndPoint(TunnelTransportInfo tunnelTransportInfo) diff --git a/linker.tunnel/adapter/ITunnelAdapter.cs b/linker.tunnel/adapter/ITunnelAdapter.cs index 3a5bd390..e03e19b7 100644 --- a/linker.tunnel/adapter/ITunnelAdapter.cs +++ b/linker.tunnel/adapter/ITunnelAdapter.cs @@ -1,9 +1,9 @@ -using linker.tunnel.wanport; -using linker.tunnel.transport; +using Linker.Tunnel.WanPort; +using Linker.Tunnel.Transport; using System.Net; using System.Security.Cryptography.X509Certificates; -namespace linker.tunnel.adapter +namespace Linker.Tunnel.Adapter { public interface ITunnelAdapter { @@ -45,7 +45,7 @@ namespace linker.tunnel.adapter /// public NetworkInfo GetLocalConfig(); /// - /// 获取远端的外网信息,可以在远端调用 TunnelTransfer.GetWanPort() 发送回来 + /// 获取远端的外网信息,比如你是A,你要获取B的信息,可以在B调用 TunnelTransfer.GetWanPort() 发送回来 /// /// /// diff --git a/linker.tunnel/connection/ITunnelConnection.cs b/linker.tunnel/connection/ITunnelConnection.cs index 77016e1c..e3690683 100644 --- a/linker.tunnel/connection/ITunnelConnection.cs +++ b/linker.tunnel/connection/ITunnelConnection.cs @@ -1,6 +1,6 @@ using System.Net; -namespace linker.tunnel.connection +namespace Linker.Tunnel.Connection { /// /// 隧道协议 diff --git a/linker.tunnel/connection/TunnelConnectionMsQuic.cs b/linker.tunnel/connection/TunnelConnectionMsQuic.cs index 63a10ff1..1795aefe 100644 --- a/linker.tunnel/connection/TunnelConnectionMsQuic.cs +++ b/linker.tunnel/connection/TunnelConnectionMsQuic.cs @@ -1,5 +1,5 @@ -using linker.libs.extends; -using linker.libs; +using Linker.Libs.Extends; +using Linker.Libs; using System.Buffers; using System.Net.Quic; using System.Net; @@ -7,7 +7,7 @@ using System.Text; using System.Text.Json.Serialization; using System.Net.Sockets; -namespace linker.tunnel.connection +namespace Linker.Tunnel.Connection { /// /// msquic @@ -98,9 +98,9 @@ namespace linker.tunnel.connection } catch (Exception ex) { - if (Logger.Instance.LoggerLevel <= LoggerTypes.DEBUG) + if (LoggerHelper.Instance.LoggerLevel <= LoggerTypes.DEBUG) { - Logger.Instance.Error(ex); + LoggerHelper.Instance.Error(ex); } } finally @@ -235,9 +235,9 @@ namespace linker.tunnel.connection } catch (Exception ex) { - if (Logger.Instance.LoggerLevel <= LoggerTypes.DEBUG) + if (LoggerHelper.Instance.LoggerLevel <= LoggerTypes.DEBUG) { - Logger.Instance.Error(ex); + LoggerHelper.Instance.Error(ex); } Dispose(); } @@ -250,7 +250,7 @@ namespace linker.tunnel.connection public void Dispose() { - Logger.Instance.Error($"tunnel connection writer offline {ToString()}"); + LoggerHelper.Instance.Error($"tunnel connection writer offline {ToString()}"); callback?.Closed(this, userToken); callback = null; diff --git a/linker.tunnel/connection/TunnelConnectionTcp.cs b/linker.tunnel/connection/TunnelConnectionTcp.cs index 085493d8..dd1dee87 100644 --- a/linker.tunnel/connection/TunnelConnectionTcp.cs +++ b/linker.tunnel/connection/TunnelConnectionTcp.cs @@ -1,5 +1,5 @@ -using linker.libs; -using linker.libs.extends; +using Linker.Libs; +using Linker.Libs.Extends; using System.Buffers; using System.Net.Security; using System.Net; @@ -7,7 +7,7 @@ using System.Text.Json.Serialization; using System.Text; using System.Net.Sockets; -namespace linker.tunnel.connection +namespace Linker.Tunnel.Connection { public sealed class TunnelConnectionTcp : ITunnelConnection { @@ -109,9 +109,9 @@ namespace linker.tunnel.connection } catch (Exception ex) { - if (Logger.Instance.LoggerLevel <= LoggerTypes.DEBUG) + if (LoggerHelper.Instance.LoggerLevel <= LoggerTypes.DEBUG) { - Logger.Instance.Error(ex); + LoggerHelper.Instance.Error(ex); } } finally @@ -264,9 +264,9 @@ namespace linker.tunnel.connection } catch (Exception ex) { - if (Logger.Instance.LoggerLevel <= LoggerTypes.DEBUG) + if (LoggerHelper.Instance.LoggerLevel <= LoggerTypes.DEBUG) { - Logger.Instance.Error(ex); + LoggerHelper.Instance.Error(ex); } Dispose(); } @@ -280,7 +280,7 @@ namespace linker.tunnel.connection public void Dispose() { - Logger.Instance.Error($"tunnel connection {this.GetHashCode()} writer offline {ToString()}"); + LoggerHelper.Instance.Error($"tunnel connection {this.GetHashCode()} writer offline {ToString()}"); callback?.Closed(this, userToken); callback = null; diff --git a/linker.tunnel/connection/TunnelConnectionUdp.cs b/linker.tunnel/connection/TunnelConnectionUdp.cs index 0394dd43..fad952af 100644 --- a/linker.tunnel/connection/TunnelConnectionUdp.cs +++ b/linker.tunnel/connection/TunnelConnectionUdp.cs @@ -1,12 +1,12 @@ -using linker.libs.extends; -using linker.libs; +using Linker.Libs.Extends; +using Linker.Libs; using System.Buffers; using System.Net; using System.Text; using System.Text.Json.Serialization; using System.Net.Sockets; -namespace linker.tunnel.connection +namespace Linker.Tunnel.Connection { public sealed class TunnelConnectionUdp : ITunnelConnection { @@ -83,16 +83,16 @@ namespace linker.tunnel.connection } catch (Exception ex) { - if (Logger.Instance.LoggerLevel <= LoggerTypes.DEBUG) + if (LoggerHelper.Instance.LoggerLevel <= LoggerTypes.DEBUG) { - Logger.Instance.Error(ex); + LoggerHelper.Instance.Error(ex); } } finally { ArrayPool.Shared.Return(buffer); Dispose(); - Logger.Instance.Error($"tunnel connection writer offline {ToString()}"); + LoggerHelper.Instance.Error($"tunnel connection writer offline {ToString()}"); } } private async Task CallbackPacket(Memory packet) @@ -181,9 +181,9 @@ namespace linker.tunnel.connection } catch (Exception ex) { - if (Logger.Instance.LoggerLevel <= LoggerTypes.DEBUG) + if (LoggerHelper.Instance.LoggerLevel <= LoggerTypes.DEBUG) { - Logger.Instance.Error(ex); + LoggerHelper.Instance.Error(ex); } } finally diff --git a/linker.tunnel/linker.tunnel.csproj b/linker.tunnel/linker.tunnel.csproj index e5743cbb..1ed8a663 100644 --- a/linker.tunnel/linker.tunnel.csproj +++ b/linker.tunnel/linker.tunnel.csproj @@ -8,21 +8,21 @@ false true true - linker tunnel + Linker tunnel 1.1.0 snltty snltty - linker tunnel + Linker tunnel snltty - https://github.com/snltty/linker - https://github.com/snltty/linker - linker tunnel + https://github.com/snltty/Linker + https://github.com/snltty/Linker + Linker tunnel 1.1.0.1 1.1.0.1 - + diff --git a/linker.tunnel/proxy/TunnelProxy.cs b/linker.tunnel/proxy/TunnelProxy.cs index 87107995..7f9bbd10 100644 --- a/linker.tunnel/proxy/TunnelProxy.cs +++ b/linker.tunnel/proxy/TunnelProxy.cs @@ -1,11 +1,11 @@ -using linker.tunnel.connection; -using linker.libs; -using linker.libs.extends; +using Linker.Tunnel.Connection; +using Linker.Libs; +using Linker.Libs.Extends; using System.Buffers; using System.Net; using System.Net.Sockets; -namespace linker.tunnel.proxy +namespace Linker.Tunnel.Proxy { public partial class TunnelProxy : ITunnelConnectionReceiveCallback { @@ -67,8 +67,8 @@ namespace linker.tunnel.proxy } catch (Exception ex) { - if (Logger.Instance.LoggerLevel <= LoggerTypes.DEBUG) - Logger.Instance.Error(ex); + if (LoggerHelper.Instance.LoggerLevel <= LoggerTypes.DEBUG) + LoggerHelper.Instance.Error(ex); } await Task.CompletedTask; } diff --git a/linker.tunnel/proxy/TunnelProxyTcp.cs b/linker.tunnel/proxy/TunnelProxyTcp.cs index f5f3f1d1..07e9de7d 100644 --- a/linker.tunnel/proxy/TunnelProxyTcp.cs +++ b/linker.tunnel/proxy/TunnelProxyTcp.cs @@ -1,12 +1,12 @@ -using linker.tunnel.connection; -using linker.libs; -using linker.libs.extends; +using Linker.Tunnel.Connection; +using Linker.Libs; +using Linker.Libs.Extends; using System.Buffers; using System.Collections.Concurrent; using System.Net; using System.Net.Sockets; -namespace linker.tunnel.proxy +namespace Linker.Tunnel.Proxy { public partial class TunnelProxy { @@ -49,7 +49,7 @@ namespace linker.tunnel.proxy } catch (Exception ex) { - Logger.Instance.Error(ex); + LoggerHelper.Instance.Error(ex); } } /// @@ -69,7 +69,7 @@ namespace linker.tunnel.proxy } catch (Exception ex) { - Logger.Instance.Error(ex); + LoggerHelper.Instance.Error(ex); token.Clear(); } } @@ -113,7 +113,7 @@ namespace linker.tunnel.proxy } catch (Exception ex) { - Logger.Instance.Error(ex); + LoggerHelper.Instance.Error(ex); } } /// @@ -141,8 +141,8 @@ namespace linker.tunnel.proxy } catch (Exception ex) { - if (Logger.Instance.LoggerLevel <= LoggerTypes.DEBUG) - Logger.Instance.Error(ex); + if (LoggerHelper.Instance.LoggerLevel <= LoggerTypes.DEBUG) + LoggerHelper.Instance.Error(ex); } } /// @@ -205,8 +205,8 @@ namespace linker.tunnel.proxy } else { - if (Logger.Instance.LoggerLevel <= LoggerTypes.DEBUG) - Logger.Instance.Error(e.SocketError.ToString()); + if (LoggerHelper.Instance.LoggerLevel <= LoggerTypes.DEBUG) + LoggerHelper.Instance.Error(e.SocketError.ToString()); await SendToConnectionClose(token).ConfigureAwait(false); CloseClientSocket(token); @@ -214,8 +214,8 @@ namespace linker.tunnel.proxy } catch (Exception ex) { - if (Logger.Instance.LoggerLevel <= LoggerTypes.DEBUG) - Logger.Instance.Error(ex); + if (LoggerHelper.Instance.LoggerLevel <= LoggerTypes.DEBUG) + LoggerHelper.Instance.Error(ex); await SendToConnectionClose(token).ConfigureAwait(false); CloseClientSocket(token); } @@ -285,8 +285,8 @@ namespace linker.tunnel.proxy } catch (Exception ex) { - if (Logger.Instance.LoggerLevel <= LoggerTypes.DEBUG) - Logger.Instance.Error(ex); + if (LoggerHelper.Instance.LoggerLevel <= LoggerTypes.DEBUG) + LoggerHelper.Instance.Error(ex); CloseClientSocket(token); } finally @@ -363,7 +363,7 @@ namespace linker.tunnel.proxy } catch (Exception ex) { - Logger.Instance.Error($"connect {state.IPEndPoint} error -> {ex}"); + LoggerHelper.Instance.Error($"connect {state.IPEndPoint} error -> {ex}"); await SendToConnectionClose(token).ConfigureAwait(false); CloseClientSocket(token); } @@ -456,9 +456,9 @@ namespace linker.tunnel.proxy } catch (Exception ex) { - if (Logger.Instance.LoggerLevel <= LoggerTypes.DEBUG) + if (LoggerHelper.Instance.LoggerLevel <= LoggerTypes.DEBUG) { - Logger.Instance.Error(ex); + LoggerHelper.Instance.Error(ex); } await SendToConnectionClose(token1).ConfigureAwait(false); diff --git a/linker.tunnel/proxy/TunnelProxyUdp.cs b/linker.tunnel/proxy/TunnelProxyUdp.cs index e1487d36..45c8344d 100644 --- a/linker.tunnel/proxy/TunnelProxyUdp.cs +++ b/linker.tunnel/proxy/TunnelProxyUdp.cs @@ -1,11 +1,11 @@ -using linker.tunnel.connection; -using linker.libs; -using linker.libs.extends; +using Linker.Tunnel.Connection; +using Linker.Libs; +using Linker.Libs.Extends; using System.Collections.Concurrent; using System.Net; using System.Net.Sockets; -namespace linker.tunnel.proxy +namespace Linker.Tunnel.Proxy { public partial class TunnelProxy { @@ -37,7 +37,7 @@ namespace linker.tunnel.proxy } catch (Exception ex) { - Logger.Instance.Error(ex); + LoggerHelper.Instance.Error(ex); } } private async Task ReceiveUdp(AsyncUserUdpToken token) @@ -68,9 +68,9 @@ namespace linker.tunnel.proxy } catch (Exception ex) { - if (Logger.Instance.LoggerLevel <= LoggerTypes.DEBUG) + if (LoggerHelper.Instance.LoggerLevel <= LoggerTypes.DEBUG) { - Logger.Instance.Error(ex); + LoggerHelper.Instance.Error(ex); } break; } @@ -172,9 +172,9 @@ namespace linker.tunnel.proxy } catch (Exception ex) { - if (Logger.Instance.LoggerLevel <= LoggerTypes.DEBUG) + if (LoggerHelper.Instance.LoggerLevel <= LoggerTypes.DEBUG) { - Logger.Instance.Error(ex); + LoggerHelper.Instance.Error(ex); } if (udpConnections.TryRemove(connectId, out AsyncUserUdpTokenTarget token)) { @@ -195,9 +195,9 @@ namespace linker.tunnel.proxy } catch (Exception ex) { - if (Logger.Instance.LoggerLevel <= LoggerTypes.DEBUG) + if (LoggerHelper.Instance.LoggerLevel <= LoggerTypes.DEBUG) { - Logger.Instance.Error(ex); + LoggerHelper.Instance.Error(ex); } } } @@ -243,9 +243,9 @@ namespace linker.tunnel.proxy } catch (Exception ex) { - if (Logger.Instance.LoggerLevel <= LoggerTypes.DEBUG) + if (LoggerHelper.Instance.LoggerLevel <= LoggerTypes.DEBUG) { - Logger.Instance.Error(ex.Message); + LoggerHelper.Instance.Error(ex.Message); } } finally diff --git a/linker.tunnel/transport/ITunnelTransport.cs b/linker.tunnel/transport/ITunnelTransport.cs index e39da5f3..23270e66 100644 --- a/linker.tunnel/transport/ITunnelTransport.cs +++ b/linker.tunnel/transport/ITunnelTransport.cs @@ -1,8 +1,7 @@ -using linker.tunnel.connection; +using Linker.Tunnel.Connection; using System.Net; -using System.Text.Json.Serialization; -namespace linker.tunnel.transport +namespace Linker.Tunnel.Transport { public interface ITunnelTransport { diff --git a/linker.tunnel/transport/TransportMsQuic.cs b/linker.tunnel/transport/TransportMsQuic.cs index 29bf8f83..f2745c38 100644 --- a/linker.tunnel/transport/TransportMsQuic.cs +++ b/linker.tunnel/transport/TransportMsQuic.cs @@ -1,7 +1,7 @@ -using linker.tunnel.adapter; -using linker.tunnel.connection; -using linker.libs; -using linker.libs.extends; +using Linker.Tunnel.Adapter; +using Linker.Tunnel.Connection; +using Linker.Libs; +using Linker.Libs.Extends; using System.Buffers; using System.Collections.Concurrent; using System.Net; @@ -11,7 +11,7 @@ using System.Net.Sockets; using System.Security.Authentication; using System.Text; -namespace linker.tunnel.transport +namespace Linker.Tunnel.Transport { public sealed class TransportMsQuic : ITunnelTransport { @@ -66,13 +66,13 @@ namespace linker.tunnel.transport { if (QuicListener.IsSupported == false) { - Logger.Instance.Error($"msquic not supported, need win11+,or linux"); + LoggerHelper.Instance.Error($"msquic not supported, need win11+,or linux"); await OnSendConnectFail(tunnelTransportInfo); return null; } if (tunnelAdapter.Certificate == null) { - Logger.Instance.Error($"msquic need ssl"); + LoggerHelper.Instance.Error($"msquic need ssl"); await OnSendConnectFail(tunnelTransportInfo); return null; } @@ -126,13 +126,13 @@ namespace linker.tunnel.transport { if (QuicListener.IsSupported == false) { - Logger.Instance.Error($"msquic not supported, need win11+,or linux"); + LoggerHelper.Instance.Error($"msquic not supported, need win11+,or linux"); await OnSendConnectFail(tunnelTransportInfo); return; } if (tunnelAdapter.Certificate == null) { - Logger.Instance.Error($"msquic need ssl"); + LoggerHelper.Instance.Error($"msquic need ssl"); await OnSendConnectFail(tunnelTransportInfo); return; } @@ -165,9 +165,9 @@ namespace linker.tunnel.transport /// private async Task ConnectForward(TunnelTransportInfo tunnelTransportInfo) { - if (Logger.Instance.LoggerLevel <= LoggerTypes.DEBUG) + if (LoggerHelper.Instance.LoggerLevel <= LoggerTypes.DEBUG) { - Logger.Instance.Warning($"{Name} connect to {tunnelTransportInfo.Remote.MachineId}->{tunnelTransportInfo.Remote.MachineName} {string.Join("\r\n", tunnelTransportInfo.RemoteEndPoints.Select(c => c.ToString()))}"); + LoggerHelper.Instance.Warning($"{Name} connect to {tunnelTransportInfo.Remote.MachineId}->{tunnelTransportInfo.Remote.MachineName} {string.Join("\r\n", tunnelTransportInfo.RemoteEndPoints.Select(c => c.ToString()))}"); } IPEndPoint local = new IPEndPoint(tunnelTransportInfo.Local.Local.Address, tunnelTransportInfo.Local.Local.Port); @@ -180,9 +180,9 @@ namespace linker.tunnel.transport { try { - if (Logger.Instance.LoggerLevel <= LoggerTypes.DEBUG) + if (LoggerHelper.Instance.LoggerLevel <= LoggerTypes.DEBUG) { - Logger.Instance.Warning($"{Name} connect to {tunnelTransportInfo.Remote.MachineId}->{tunnelTransportInfo.Remote.MachineName} {ep}"); + LoggerHelper.Instance.Warning($"{Name} connect to {tunnelTransportInfo.Remote.MachineId}->{tunnelTransportInfo.Remote.MachineName} {ep}"); } if (ep.AddressFamily == AddressFamily.InterNetwork) { @@ -192,9 +192,9 @@ namespace linker.tunnel.transport } catch (Exception ex) { - if (Logger.Instance.LoggerLevel <= LoggerTypes.DEBUG) + if (LoggerHelper.Instance.LoggerLevel <= LoggerTypes.DEBUG) { - Logger.Instance.Error(ex.Message); + LoggerHelper.Instance.Error(ex.Message); } } } @@ -242,9 +242,9 @@ namespace linker.tunnel.transport } catch (Exception ex) { - if (Logger.Instance.LoggerLevel <= LoggerTypes.DEBUG) + if (LoggerHelper.Instance.LoggerLevel <= LoggerTypes.DEBUG) { - Logger.Instance.Error(ex); + LoggerHelper.Instance.Error(ex); } } try @@ -268,9 +268,9 @@ namespace linker.tunnel.transport { try { - if (Logger.Instance.LoggerLevel <= LoggerTypes.DEBUG) + if (LoggerHelper.Instance.LoggerLevel <= LoggerTypes.DEBUG) { - Logger.Instance.Warning($"{Name} ttl to {tunnelTransportInfo.Remote.MachineId}->{tunnelTransportInfo.Remote.MachineName} {ip}"); + LoggerHelper.Instance.Warning($"{Name} ttl to {tunnelTransportInfo.Remote.MachineId}->{tunnelTransportInfo.Remote.MachineName} {ip}"); } if (ip.AddressFamily == AddressFamily.InterNetwork) @@ -294,9 +294,9 @@ namespace linker.tunnel.transport } catch (Exception ex) { - if (Logger.Instance.LoggerLevel <= LoggerTypes.DEBUG) + if (LoggerHelper.Instance.LoggerLevel <= LoggerTypes.DEBUG) { - Logger.Instance.Error(ex.Message); + LoggerHelper.Instance.Error(ex.Message); } } finally @@ -360,9 +360,9 @@ namespace linker.tunnel.transport } catch (Exception ex) { - if (Logger.Instance.LoggerLevel <= LoggerTypes.DEBUG) + if (LoggerHelper.Instance.LoggerLevel <= LoggerTypes.DEBUG) { - Logger.Instance.Error(ex); + LoggerHelper.Instance.Error(ex); } } finally @@ -411,9 +411,9 @@ namespace linker.tunnel.transport } catch (Exception ex) { - if (Logger.Instance.LoggerLevel <= LoggerTypes.DEBUG) + if (LoggerHelper.Instance.LoggerLevel <= LoggerTypes.DEBUG) { - Logger.Instance.Error(ex); + LoggerHelper.Instance.Error(ex); } localUdp.SafeClose(); remoteUdp.SafeClose(); @@ -453,9 +453,9 @@ namespace linker.tunnel.transport catch (Exception ex) { token.Clear(); - if (Logger.Instance.LoggerLevel <= LoggerTypes.DEBUG) + if (LoggerHelper.Instance.LoggerLevel <= LoggerTypes.DEBUG) { - Logger.Instance.Error(ex); + LoggerHelper.Instance.Error(ex); } } } @@ -495,9 +495,9 @@ namespace linker.tunnel.transport catch (Exception ex) { token.Clear(); - if (Logger.Instance.LoggerLevel <= LoggerTypes.DEBUG) + if (LoggerHelper.Instance.LoggerLevel <= LoggerTypes.DEBUG) { - Logger.Instance.Error(ex); + LoggerHelper.Instance.Error(ex); } } finally @@ -531,9 +531,9 @@ namespace linker.tunnel.transport catch (Exception ex) { token.Clear(); - if (Logger.Instance.LoggerLevel <= LoggerTypes.DEBUG) + if (LoggerHelper.Instance.LoggerLevel <= LoggerTypes.DEBUG) { - Logger.Instance.Error(ex); + LoggerHelper.Instance.Error(ex); } } finally @@ -564,9 +564,9 @@ namespace linker.tunnel.transport } catch (Exception ex) { - if (Logger.Instance.LoggerLevel <= LoggerTypes.DEBUG) + if (LoggerHelper.Instance.LoggerLevel <= LoggerTypes.DEBUG) { - Logger.Instance.Error(ex); + LoggerHelper.Instance.Error(ex); } local.SafeClose(); remote.SafeClose(); @@ -633,9 +633,9 @@ namespace linker.tunnel.transport } catch (Exception ex) { - if (Logger.Instance.LoggerLevel <= LoggerTypes.DEBUG) + if (LoggerHelper.Instance.LoggerLevel <= LoggerTypes.DEBUG) { - Logger.Instance.Error(ex); + LoggerHelper.Instance.Error(ex); } } } @@ -652,12 +652,12 @@ namespace linker.tunnel.transport { if (QuicListener.IsSupported == false) { - Logger.Instance.Error($"msquic not supported, need win11+,or linux"); + LoggerHelper.Instance.Error($"msquic not supported, need win11+,or linux"); return; } if (tunnelAdapter.Certificate == null) { - Logger.Instance.Error($"msquic need ssl"); + LoggerHelper.Instance.Error($"msquic need ssl"); return; } @@ -706,9 +706,9 @@ namespace linker.tunnel.transport } catch (Exception ex) { - if (Logger.Instance.LoggerLevel <= LoggerTypes.DEBUG) + if (LoggerHelper.Instance.LoggerLevel <= LoggerTypes.DEBUG) { - Logger.Instance.Error(ex); + LoggerHelper.Instance.Error(ex); } } } diff --git a/linker.tunnel/transport/TransportTcpNutssb.cs b/linker.tunnel/transport/TransportTcpNutssb.cs index 14cd7bc0..49ebdefd 100644 --- a/linker.tunnel/transport/TransportTcpNutssb.cs +++ b/linker.tunnel/transport/TransportTcpNutssb.cs @@ -1,7 +1,7 @@ -using linker.tunnel.adapter; -using linker.tunnel.connection; -using linker.libs; -using linker.libs.extends; +using Linker.Tunnel.Adapter; +using Linker.Tunnel.Connection; +using Linker.Libs; +using Linker.Libs.Extends; using System.Collections.Concurrent; using System.Net; using System.Net.Security; @@ -9,7 +9,7 @@ using System.Net.Sockets; using System.Security.Authentication; using System.Security.Cryptography.X509Certificates; -namespace linker.tunnel.transport +namespace Linker.Tunnel.Transport { public sealed class TunnelTransportTcpNutssb : ITunnelTransport { @@ -93,7 +93,7 @@ namespace linker.tunnel.transport { if (tunnelTransportInfo.SSL && tunnelAdapter.Certificate == null) { - Logger.Instance.Error($"{Name}->ssl Certificate not found"); + LoggerHelper.Instance.Error($"{Name}->ssl Certificate not found"); await OnSendConnectSuccess(tunnelTransportInfo); return; } @@ -140,9 +140,9 @@ namespace linker.tunnel.transport private async Task ConnectForward(TunnelTransportInfo tunnelTransportInfo) { - if (Logger.Instance.LoggerLevel <= LoggerTypes.DEBUG) + if (LoggerHelper.Instance.LoggerLevel <= LoggerTypes.DEBUG) { - Logger.Instance.Warning($"{Name} connect to {tunnelTransportInfo.Remote.MachineId}->{tunnelTransportInfo.Remote.MachineName} {string.Join("\r\n", tunnelTransportInfo.RemoteEndPoints.Select(c => c.ToString()))}"); + LoggerHelper.Instance.Warning($"{Name} connect to {tunnelTransportInfo.Remote.MachineId}->{tunnelTransportInfo.Remote.MachineName} {string.Join("\r\n", tunnelTransportInfo.RemoteEndPoints.Select(c => c.ToString()))}"); } foreach (IPEndPoint ep in tunnelTransportInfo.RemoteEndPoints) @@ -155,9 +155,9 @@ namespace linker.tunnel.transport targetSocket.KeepAlive(); targetSocket.ReuseBind(new IPEndPoint(ep.AddressFamily == AddressFamily.InterNetwork ? IPAddress.Any : IPAddress.IPv6Any, tunnelTransportInfo.Local.Local.Port)); - if (Logger.Instance.LoggerLevel <= LoggerTypes.DEBUG) + if (LoggerHelper.Instance.LoggerLevel <= LoggerTypes.DEBUG) { - Logger.Instance.Warning($"{Name} connect to {tunnelTransportInfo.Remote.MachineId}->{tunnelTransportInfo.Remote.MachineName} {ep}"); + LoggerHelper.Instance.Warning($"{Name} connect to {tunnelTransportInfo.Remote.MachineId}->{tunnelTransportInfo.Remote.MachineName} {ep}"); } await targetSocket.ConnectAsync(ep).WaitAsync(TimeSpan.FromMilliseconds(ep.Address.Equals(tunnelTransportInfo.Remote.Remote.Address) ? 500 : 100)); @@ -254,7 +254,7 @@ namespace linker.tunnel.transport { if (tunnelAdapter.Certificate == null) { - Logger.Instance.Error($"{Name}-> ssl Certificate not found"); + LoggerHelper.Instance.Error($"{Name}-> ssl Certificate not found"); socket.SafeClose(); return; } @@ -289,9 +289,9 @@ namespace linker.tunnel.transport } catch (Exception ex) { - if (Logger.Instance.LoggerLevel <= LoggerTypes.DEBUG) + if (LoggerHelper.Instance.LoggerLevel <= LoggerTypes.DEBUG) { - Logger.Instance.Error(ex); + LoggerHelper.Instance.Error(ex); } } } diff --git a/linker.tunnel/transport/TransportUdp.cs b/linker.tunnel/transport/TransportUdp.cs index a16f29f6..259d1c34 100644 --- a/linker.tunnel/transport/TransportUdp.cs +++ b/linker.tunnel/transport/TransportUdp.cs @@ -1,12 +1,12 @@ -using linker.tunnel.connection; -using linker.libs; -using linker.libs.extends; +using Linker.Tunnel.Connection; +using Linker.Libs; +using Linker.Libs.Extends; using System.Collections.Concurrent; using System.Net; using System.Net.Sockets; using System.Text; -namespace linker.tunnel.transport +namespace Linker.Tunnel.Transport { public sealed class TransportUdp : ITunnelTransport { @@ -96,9 +96,9 @@ namespace linker.tunnel.transport private async Task ConnectForward(TunnelTransportInfo tunnelTransportInfo) { - if (Logger.Instance.LoggerLevel <= LoggerTypes.DEBUG) + if (LoggerHelper.Instance.LoggerLevel <= LoggerTypes.DEBUG) { - Logger.Instance.Warning($"{Name} connect to {tunnelTransportInfo.Remote.MachineId}->{tunnelTransportInfo.Remote.MachineName} {string.Join("\r\n", tunnelTransportInfo.RemoteEndPoints.Select(c => c.ToString()))}"); + LoggerHelper.Instance.Warning($"{Name} connect to {tunnelTransportInfo.Remote.MachineId}->{tunnelTransportInfo.Remote.MachineName} {string.Join("\r\n", tunnelTransportInfo.RemoteEndPoints.Select(c => c.ToString()))}"); } IPEndPoint local = new IPEndPoint(tunnelTransportInfo.Local.Local.Address, tunnelTransportInfo.Local.Local.Port); @@ -110,9 +110,9 @@ namespace linker.tunnel.transport { try { - if (Logger.Instance.LoggerLevel <= LoggerTypes.DEBUG) + if (LoggerHelper.Instance.LoggerLevel <= LoggerTypes.DEBUG) { - Logger.Instance.Warning($"{Name} connect to {tunnelTransportInfo.Remote.MachineId}->{tunnelTransportInfo.Remote.MachineName} {ep}"); + LoggerHelper.Instance.Warning($"{Name} connect to {tunnelTransportInfo.Remote.MachineId}->{tunnelTransportInfo.Remote.MachineName} {ep}"); } if (ep.AddressFamily == AddressFamily.InterNetwork) { @@ -126,9 +126,9 @@ namespace linker.tunnel.transport } catch (Exception ex) { - if (Logger.Instance.LoggerLevel <= LoggerTypes.DEBUG) + if (LoggerHelper.Instance.LoggerLevel <= LoggerTypes.DEBUG) { - Logger.Instance.Error(ex.Message); + LoggerHelper.Instance.Error(ex.Message); } } } @@ -166,9 +166,9 @@ namespace linker.tunnel.transport } catch (Exception ex) { - if (Logger.Instance.LoggerLevel <= LoggerTypes.DEBUG) + if (LoggerHelper.Instance.LoggerLevel <= LoggerTypes.DEBUG) { - Logger.Instance.Error(ex); + LoggerHelper.Instance.Error(ex); } } try @@ -267,9 +267,9 @@ namespace linker.tunnel.transport { udpClient.Close(); udpClient6.Close(); - if (Logger.Instance.LoggerLevel <= LoggerTypes.DEBUG) + if (LoggerHelper.Instance.LoggerLevel <= LoggerTypes.DEBUG) { - Logger.Instance.Error(ex); + LoggerHelper.Instance.Error(ex); } } } @@ -299,9 +299,9 @@ namespace linker.tunnel.transport } catch (Exception ex) { - if (Logger.Instance.LoggerLevel <= LoggerTypes.DEBUG) + if (LoggerHelper.Instance.LoggerLevel <= LoggerTypes.DEBUG) { - Logger.Instance.Error(ex); + LoggerHelper.Instance.Error(ex); } } finally @@ -315,9 +315,9 @@ namespace linker.tunnel.transport { try { - if (Logger.Instance.LoggerLevel <= LoggerTypes.DEBUG) + if (LoggerHelper.Instance.LoggerLevel <= LoggerTypes.DEBUG) { - Logger.Instance.Warning($"{Name} ttl to {tunnelTransportInfo.Remote.MachineId}->{tunnelTransportInfo.Remote.MachineName} {ip}"); + LoggerHelper.Instance.Warning($"{Name} ttl to {tunnelTransportInfo.Remote.MachineId}->{tunnelTransportInfo.Remote.MachineName} {ip}"); } if (ip.AddressFamily == AddressFamily.InterNetwork) @@ -341,9 +341,9 @@ namespace linker.tunnel.transport } catch (Exception ex) { - if (Logger.Instance.LoggerLevel <= LoggerTypes.DEBUG) + if (LoggerHelper.Instance.LoggerLevel <= LoggerTypes.DEBUG) { - Logger.Instance.Error(ex.Message); + LoggerHelper.Instance.Error(ex.Message); } } finally @@ -417,9 +417,9 @@ namespace linker.tunnel.transport } catch (Exception ex) { - if (Logger.Instance.LoggerLevel <= LoggerTypes.DEBUG) + if (LoggerHelper.Instance.LoggerLevel <= LoggerTypes.DEBUG) { - Logger.Instance.Error(ex); + LoggerHelper.Instance.Error(ex); } } } diff --git a/linker.tunnel/wanport/ITunnelWanPort.cs b/linker.tunnel/wanport/ITunnelWanPort.cs index 61ea70e3..62739f5b 100644 --- a/linker.tunnel/wanport/ITunnelWanPort.cs +++ b/linker.tunnel/wanport/ITunnelWanPort.cs @@ -1,6 +1,6 @@ using System.Net; -namespace linker.tunnel.wanport +namespace Linker.Tunnel.WanPort { /// /// 外网端口协议 diff --git a/linker.tunnel/wanport/TunnelWanPortLinker.cs b/linker.tunnel/wanport/TunnelWanPortLinker.cs index cb451190..541af103 100644 --- a/linker.tunnel/wanport/TunnelWanPortLinker.cs +++ b/linker.tunnel/wanport/TunnelWanPortLinker.cs @@ -1,8 +1,8 @@ -using linker.libs.extends; +using Linker.Libs.Extends; using System.Net; using System.Net.Sockets; -namespace linker.tunnel.wanport +namespace Linker.Tunnel.WanPort { public sealed class TunnelWanPortLinker : ITunnelWanPort { diff --git a/linker.tunnel/wanport/TunnelWanPortStun.cs b/linker.tunnel/wanport/TunnelWanPortStun.cs index 94392127..5c702a7f 100644 --- a/linker.tunnel/wanport/TunnelWanPortStun.cs +++ b/linker.tunnel/wanport/TunnelWanPortStun.cs @@ -1,9 +1,9 @@ -using linker.libs.extends; +using Linker.Libs.Extends; using System.Buffers.Binary; using System.Net; using System.Net.Sockets; -namespace linker.tunnel.wanport +namespace Linker.Tunnel.WanPort { public sealed class TunnelWanPortStun : ITunnelWanPort { diff --git a/linker.tunnel/wanport/TunnelWanPortTransfer.cs b/linker.tunnel/wanport/TunnelWanPortTransfer.cs index 4bf29df2..ad551685 100644 --- a/linker.tunnel/wanport/TunnelWanPortTransfer.cs +++ b/linker.tunnel/wanport/TunnelWanPortTransfer.cs @@ -1,9 +1,9 @@ -using linker.tunnel.adapter; -using linker.libs; +using Linker.Tunnel.Adapter; +using Linker.Libs; using System.Diagnostics; using System.Net; -namespace linker.tunnel.wanport +namespace Linker.Tunnel.WanPort { /// /// 外网端口协议 @@ -26,7 +26,7 @@ namespace linker.tunnel.wanport this.tunnelAdapter = tunnelAdapter; this.tunnelWanPorts = tunnelWanPorts; - Logger.Instance.Warning($"load tunnel wanport compacts:{string.Join(",", tunnelWanPorts.Select(c => c.Name))}"); + LoggerHelper.Instance.Warning($"load tunnel wanport compacts:{string.Join(",", tunnelWanPorts.Select(c => c.Name))}"); } public List GetTypes() @@ -56,7 +56,7 @@ namespace linker.tunnel.wanport sw.Stop(); if (sw.ElapsedMilliseconds > 1000) { - Logger.Instance.Warning($"get domain ip time:{sw.ElapsedMilliseconds}ms"); + LoggerHelper.Instance.Warning($"get domain ip time:{sw.ElapsedMilliseconds}ms"); } TunnelWanPortEndPoint WanPort = await tunnelWanPort.GetAsync(server); if (WanPort != null) @@ -67,7 +67,7 @@ namespace linker.tunnel.wanport } catch (Exception ex) { - Logger.Instance.Error(ex); + LoggerHelper.Instance.Error(ex); } } return null; diff --git a/linker/Dockerfile-alpine b/linker/Dockerfile-alpine index 16842b3c..cc932eb8 100644 --- a/linker/Dockerfile-alpine +++ b/linker/Dockerfile-alpine @@ -16,4 +16,4 @@ COPY . . -ENTRYPOINT ["./linker.run"] \ No newline at end of file +ENTRYPOINT ["./Linker.run"] \ No newline at end of file diff --git a/linker/Program.cs b/linker/Program.cs index 3333c681..64c39f28 100644 --- a/linker/Program.cs +++ b/linker/Program.cs @@ -1,10 +1,10 @@ -using linker.libs; +using Linker.Libs; using Microsoft.Extensions.DependencyInjection; using System.Reflection; -using linker.startup; -using linker.config; +using Linker.Startup; +using Linker.Config; -namespace linker +namespace Linker { internal class Program { @@ -19,9 +19,9 @@ namespace linker Init(); //初始化配置文件 - Config config = new Config(); + ConfigWrap config = new ConfigWrap(); - Logger.Instance.Warning($"current version : {config.Data.Version}"); + LoggerHelper.Instance.Warning($"current version : {config.Data.Version}"); Assembly[] assemblies = AppDomain.CurrentDomain.GetAssemblies(); @@ -47,7 +47,7 @@ namespace linker //全局异常 AppDomain.CurrentDomain.UnhandledException += (a, b) => { - Logger.Instance.Error(b.ExceptionObject + ""); + LoggerHelper.Instance.Error(b.ExceptionObject + ""); }; //线程数 ThreadPool.SetMinThreads(1024, 1024); @@ -63,7 +63,7 @@ namespace linker { Directory.CreateDirectory("logs"); } - Logger.Instance.OnLogger += (model) => + LoggerHelper.Instance.OnLogger += (model) => { ConsoleColor currentForeColor = Console.ForegroundColor; switch (model.Type) diff --git a/linker/Properties/launchSettings.json b/linker/Properties/launchSettings.json index b9b6ab99..a690c5d7 100644 --- a/linker/Properties/launchSettings.json +++ b/linker/Properties/launchSettings.json @@ -1,6 +1,6 @@ { "profiles": { - "linker": { + "Linker": { "commandName": "Project" }, "Docker": { diff --git a/linker/client/ClientSignInState.cs b/linker/client/ClientSignInState.cs index 749bad0f..64cb47f5 100644 --- a/linker/client/ClientSignInState.cs +++ b/linker/client/ClientSignInState.cs @@ -1,7 +1,7 @@ -using linker.server; +using Linker.Server; using System.Text.Json.Serialization; -namespace linker.client +namespace Linker.Client { /// /// 登入对象 diff --git a/linker/client/ClientSignInTransfer.cs b/linker/client/ClientSignInTransfer.cs index 56ebb851..023a02f3 100644 --- a/linker/client/ClientSignInTransfer.cs +++ b/linker/client/ClientSignInTransfer.cs @@ -1,15 +1,15 @@ -using linker.client.args; -using linker.client.config; -using linker.config; -using linker.plugins.signin.messenger; -using linker.server; -using linker.libs; -using linker.libs.extends; +using Linker.Client.Args; +using Linker.Client.Config; +using Linker.Config; +using Linker.Plugins.Signin.Messenger; +using Linker.Server; +using Linker.Libs; +using Linker.Libs.Extends; using MemoryPack; using System.Net; using System.Net.Sockets; -namespace linker.client +namespace Linker.Client { /// /// 登入 @@ -18,12 +18,12 @@ namespace linker.client { private readonly ClientSignInState clientSignInState; private readonly RunningConfig runningConfig; - private readonly Config config; + private readonly ConfigWrap config; private readonly TcpServer tcpServer; private readonly MessengerSender messengerSender; private readonly SignInArgsTransfer signInArgsTransfer; - public ClientSignInTransfer(ClientSignInState clientSignInState, RunningConfig runningConfig, Config config, TcpServer tcpServer, MessengerSender messengerSender, SignInArgsTransfer signInArgsTransfer) + public ClientSignInTransfer(ClientSignInState clientSignInState, RunningConfig runningConfig, ConfigWrap config, TcpServer tcpServer, MessengerSender messengerSender, SignInArgsTransfer signInArgsTransfer) { this.clientSignInState = clientSignInState; this.runningConfig = runningConfig; @@ -54,8 +54,8 @@ namespace linker.client } catch (Exception ex) { - if (Logger.Instance.LoggerLevel <= LoggerTypes.DEBUG) - Logger.Instance.Error(ex); + if (LoggerHelper.Instance.LoggerLevel <= LoggerTypes.DEBUG) + LoggerHelper.Instance.Error(ex); } } await Task.Delay(10000); @@ -80,8 +80,8 @@ namespace linker.client try { - if (Logger.Instance.LoggerLevel <= LoggerTypes.DEBUG) - Logger.Instance.Info($"connect to signin server :{config.Data.Client.Server}"); + if (LoggerHelper.Instance.LoggerLevel <= LoggerTypes.DEBUG) + LoggerHelper.Instance.Info($"connect to signin server :{config.Data.Client.Server}"); IPEndPoint ip = NetworkHelper.GetEndPoint(config.Data.Client.Server, 1802); @@ -102,8 +102,8 @@ namespace linker.client } catch (Exception ex) { - if (Logger.Instance.LoggerLevel <= LoggerTypes.DEBUG) - Logger.Instance.Error(ex); + if (LoggerHelper.Instance.LoggerLevel <= LoggerTypes.DEBUG) + LoggerHelper.Instance.Error(ex); } finally { diff --git a/linker/client/ClientStartup.cs b/linker/client/ClientStartup.cs index 96d8e6be..8a4dec1d 100644 --- a/linker/client/ClientStartup.cs +++ b/linker/client/ClientStartup.cs @@ -1,13 +1,12 @@ -using linker.config; -using linker.libs; -using linker.startup; -using linker.libs; +using Linker.Libs; +using Linker.Startup; using Microsoft.Extensions.DependencyInjection; using System.Reflection; -using linker.client.args; -using linker.client.config; +using Linker.Client.Args; +using Linker.Client.Config; +using Linker.Config; -namespace linker.client +namespace Linker.Client { /// /// 客户端插件 @@ -20,7 +19,7 @@ namespace linker.client public string[] Dependent => new string[] { "firewall", "signin", "serialize" }; public StartupLoadType LoadType => StartupLoadType.Normal; - public void AddClient(ServiceCollection serviceCollection, Config config, Assembly[] assemblies) + public void AddClient(ServiceCollection serviceCollection, ConfigWrap config, Assembly[] assemblies) { serviceCollection.AddSingleton(); @@ -31,21 +30,21 @@ namespace linker.client } - public void UseClient(ServiceProvider serviceProvider, Config config, Assembly[] assemblies) + public void UseClient(ServiceProvider serviceProvider, ConfigWrap config, Assembly[] assemblies) { - Logger.Instance.Info($"start client"); + LoggerHelper.Instance.Info($"start client"); - Logger.Instance.Info($"start client signin transfer"); + LoggerHelper.Instance.Info($"start client signin transfer"); ClientSignInTransfer clientTransfer = serviceProvider.GetService(); clientTransfer.SignInTask(); } - public void AddServer(ServiceCollection serviceCollection, Config config, Assembly[] assemblies) + public void AddServer(ServiceCollection serviceCollection, ConfigWrap config, Assembly[] assemblies) { } - public void UseServer(ServiceProvider serviceProvider, Config config, Assembly[] assemblies) + public void UseServer(ServiceProvider serviceProvider, ConfigWrap config, Assembly[] assemblies) { } } diff --git a/linker/client/args/ISignInArgs.cs b/linker/client/args/ISignInArgs.cs index fc59a772..761f2a9b 100644 --- a/linker/client/args/ISignInArgs.cs +++ b/linker/client/args/ISignInArgs.cs @@ -1,4 +1,4 @@ -namespace linker.client.args +namespace Linker.Client.Args { public interface ISignInArgs { diff --git a/linker/client/args/SignInArgsTransfer.cs b/linker/client/args/SignInArgsTransfer.cs index 8d9eb084..1225600e 100644 --- a/linker/client/args/SignInArgsTransfer.cs +++ b/linker/client/args/SignInArgsTransfer.cs @@ -1,15 +1,15 @@ -using linker.config; -using linker.libs; +using Linker.Config; +using Linker.Libs; using Microsoft.Extensions.DependencyInjection; using System; -namespace linker.client.args +namespace Linker.Client.Args { public sealed class SignInArgsTransfer { private List startups; - public SignInArgsTransfer(ServiceProvider serviceProvider, Config config) + public SignInArgsTransfer(ServiceProvider serviceProvider, ConfigWrap config) { var types = ReflectionHelper.GetInterfaceSchieves(typeof(ISignInArgs)); startups = types.Select(c => serviceProvider.GetService(c) as ISignInArgs).Where(c=>c != null).ToList(); diff --git a/linker/client/capi/IApiClientController.cs b/linker/client/capi/IApiClientController.cs index 625913c5..bac2034f 100644 --- a/linker/client/capi/IApiClientController.cs +++ b/linker/client/capi/IApiClientController.cs @@ -1,7 +1,7 @@ -using linker.libs.api; +using Linker.Libs.Api; using System.Reflection; -namespace linker.client.capi +namespace Linker.Client.Capi { public interface IApiClientController : IApiController { diff --git a/linker/client/config/Config.cs b/linker/client/config/Config.cs index 8c8b5b1c..c6d8a6c8 100644 --- a/linker/client/config/Config.cs +++ b/linker/client/config/Config.cs @@ -1,10 +1,10 @@ -using linker.config; -using linker.libs.extends; +using Linker.Config; +using Linker.Libs.Extends; using LiteDB; using MemoryPack; using System.Net; -namespace linker.client.config +namespace Linker.Client.Config { public sealed partial class RunningConfigInfo { @@ -32,7 +32,7 @@ namespace linker.client.config } } -namespace linker.config +namespace Linker.Config { public sealed partial class ConfigInfo { diff --git a/linker/client/config/RunningConfig.cs b/linker/client/config/RunningConfig.cs index 5a247430..b5e7ec4b 100644 --- a/linker/client/config/RunningConfig.cs +++ b/linker/client/config/RunningConfig.cs @@ -1,9 +1,9 @@ -using linker.database; -using linker.libs; +using Linker.Store; +using Linker.Libs; using LiteDB; using System.Text.Json.Serialization; -namespace linker.client.config +namespace Linker.Client.Config { public sealed class RunningConfig { @@ -33,7 +33,7 @@ namespace linker.client.config } catch (Exception ex) { - Logger.Instance.Error(ex); + LoggerHelper.Instance.Error(ex); } finally { @@ -78,7 +78,7 @@ namespace linker.client.config } catch (Exception ex) { - Logger.Instance.Error(ex); + LoggerHelper.Instance.Error(ex); } finally { diff --git a/linker/config/Config.cs b/linker/config/Config.cs index c2484e4c..a9b9d0c2 100644 --- a/linker/config/Config.cs +++ b/linker/config/Config.cs @@ -1,11 +1,11 @@ -using linker.libs; -using linker.libs.extends; +using Linker.Libs; +using Linker.Libs.Extends; using System.Reflection; using System.Text.Json.Serialization; -namespace linker.config +namespace Linker.Config { - public sealed class Config + public sealed class ConfigWrap { private SemaphoreSlim slim = new SemaphoreSlim(1); private string configPath = "./configs/"; @@ -14,7 +14,7 @@ namespace linker.config public ConfigInfo Data { get; private set; } = new ConfigInfo(); - public Config() + public ConfigWrap() { Init(); Load(); @@ -70,7 +70,7 @@ namespace linker.config } catch (Exception ex) { - Logger.Instance.Error(ex); + LoggerHelper.Instance.Error(ex); } finally { @@ -98,7 +98,7 @@ namespace linker.config } catch (Exception ex) { - Logger.Instance.Error(ex); + LoggerHelper.Instance.Error(ex); } finally { @@ -149,7 +149,7 @@ namespace linker.config get => loggerType; set { loggerType = value; - Logger.Instance.LoggerLevel = value; + LoggerHelper.Instance.LoggerLevel = value; } } public int LoggerSize { get; set; } = 100; diff --git a/linker/linker.csproj b/linker/linker.csproj index 7b0f4799..ca5bd010 100644 --- a/linker/linker.csproj +++ b/linker/linker.csproj @@ -16,15 +16,15 @@ true true false - linker + Linker 1.1.0 snltty snltty - linker + Linker snltty - https://github.com/snltty/linker - https://github.com/snltty/linker - linker + https://github.com/snltty/Linker + https://github.com/snltty/Linker + Linker 1.1.0.1 1.1.0.1 @@ -60,8 +60,8 @@ - - + + diff --git a/linker/plugins/capi/ApiClientServer.cs b/linker/plugins/capi/ApiClientServer.cs index fdfa51af..ef41ea95 100644 --- a/linker/plugins/capi/ApiClientServer.cs +++ b/linker/plugins/capi/ApiClientServer.cs @@ -1,11 +1,11 @@ -using linker.client.capi; -using linker.config; -using linker.libs; -using linker.libs.api; +using Linker.Client.Capi; +using Linker.Config; +using Linker.Libs; +using Linker.Libs.Api; using Microsoft.Extensions.DependencyInjection; using System.Reflection; -namespace linker.plugins.capi +namespace Linker.Plugins.Capi { /// /// 前段接口服务 @@ -13,9 +13,9 @@ namespace linker.plugins.capi public sealed class ApiClientServer : ApiServer, IApiClientServer { private readonly ServiceProvider serviceProvider; - private readonly Config config; + private readonly ConfigWrap config; - public ApiClientServer(ServiceProvider serviceProvider, Config config) + public ApiClientServer(ServiceProvider serviceProvider, ConfigWrap config) { this.serviceProvider = serviceProvider; this.config = config; @@ -38,7 +38,7 @@ namespace linker.plugins.capi { continue; } - Logger.Instance.Warning($"load client api:{item.Name}"); + LoggerHelper.Instance.Warning($"load client api:{item.Name}"); string path = item.Name.Replace("ApiController", "").Replace("ApiController", ""); foreach (MethodInfo method in item.GetMethods(BindingFlags.Instance | BindingFlags.Public | BindingFlags.DeclaredOnly)) diff --git a/linker/plugins/capi/CApiStartup.cs b/linker/plugins/capi/CApiStartup.cs index 150a2b49..56febd2c 100644 --- a/linker/plugins/capi/CApiStartup.cs +++ b/linker/plugins/capi/CApiStartup.cs @@ -1,11 +1,11 @@ -using linker.client.capi; -using linker.config; -using linker.startup; -using linker.libs; +using Linker.Client.Capi; +using Linker.Config; +using Linker.Startup; +using Linker.Libs; using Microsoft.Extensions.DependencyInjection; using System.Reflection; -namespace linker.plugins.capi +namespace Linker.Plugins.Capi { public sealed class CApiStartup : IStartup { @@ -15,38 +15,38 @@ namespace linker.plugins.capi public string[] Dependent => new string[] {}; public StartupLoadType LoadType => StartupLoadType.Normal; - public void AddClient(ServiceCollection serviceCollection, Config config, Assembly[] assemblies) + public void AddClient(ServiceCollection serviceCollection, ConfigWrap config, Assembly[] assemblies) { serviceCollection.AddSingleton(); serviceCollection.AddSingleton(); } - public void UseClient(ServiceProvider serviceProvider, Config config, Assembly[] assemblies) + public void UseClient(ServiceProvider serviceProvider, ConfigWrap config, Assembly[] assemblies) { if (config.Data.Client.CApi.ApiPort > 0) { - Logger.Instance.Info($"start client api server"); + LoggerHelper.Instance.Info($"start client api server"); IApiClientServer clientServer = serviceProvider.GetService(); clientServer.LoadPlugins(assemblies); clientServer.Websocket(config.Data.Client.CApi.ApiPort, config.Data.Client.CApi.ApiPassword); - Logger.Instance.Warning($"client api listen:{config.Data.Client.CApi.ApiPort}"); - Logger.Instance.Warning($"client api password:{config.Data.Client.CApi.ApiPassword}"); + LoggerHelper.Instance.Warning($"client api listen:{config.Data.Client.CApi.ApiPort}"); + LoggerHelper.Instance.Warning($"client api password:{config.Data.Client.CApi.ApiPassword}"); } if (config.Data.Client.CApi.WebPort > 0) { IWebClientServer webServer = serviceProvider.GetService(); webServer.Start(config.Data.Client.CApi.WebPort, config.Data.Client.CApi.WebRoot); - Logger.Instance.Warning($"client web listen:{config.Data.Client.CApi.WebPort}"); + LoggerHelper.Instance.Warning($"client web listen:{config.Data.Client.CApi.WebPort}"); } } - public void AddServer(ServiceCollection serviceCollection, Config config, Assembly[] assemblies) + public void AddServer(ServiceCollection serviceCollection, ConfigWrap config, Assembly[] assemblies) { } - public void UseServer(ServiceProvider serviceProvider, Config config, Assembly[] assemblies) + public void UseServer(ServiceProvider serviceProvider, ConfigWrap config, Assembly[] assemblies) { } } diff --git a/linker/plugins/capi/WebClientServer.cs b/linker/plugins/capi/WebClientServer.cs index f0b671fd..bcf53776 100644 --- a/linker/plugins/capi/WebClientServer.cs +++ b/linker/plugins/capi/WebClientServer.cs @@ -1,6 +1,6 @@ -using linker.libs.web; +using Linker.Libs.Web; -namespace linker.plugins.capi +namespace Linker.Plugins.Capi { public interface IWebClientServer : IWebServer { diff --git a/linker/plugins/capi/config/Config.cs b/linker/plugins/capi/config/Config.cs index c5b37787..7f7f9f38 100644 --- a/linker/plugins/capi/config/Config.cs +++ b/linker/plugins/capi/config/Config.cs @@ -1,6 +1,6 @@ -using linker.libs; +using Linker.Libs; -namespace linker.config +namespace Linker.Config { public partial class ConfigClientInfo { diff --git a/linker/plugins/connections/ConnectionsApiController.cs b/linker/plugins/connections/ConnectionsApiController.cs index 4c5d3894..cd28653a 100644 --- a/linker/plugins/connections/ConnectionsApiController.cs +++ b/linker/plugins/connections/ConnectionsApiController.cs @@ -1,13 +1,13 @@ -using linker.client.capi; -using linker.plugins.relay; -using linker.tunnel; -using linker.tunnel.connection; -using linker.libs; -using linker.libs.api; -using linker.libs.extends; +using Linker.Client.Capi; +using Linker.Plugins.Relay; +using Linker.Tunnel; +using Linker.Tunnel.Connection; +using Linker.Libs; +using Linker.Libs.Api; +using Linker.Libs.Extends; using System.Collections.Concurrent; -namespace linker.plugins.connections +namespace Linker.Plugins.Connections { public sealed class ConnectionsApiController : IApiClientController { diff --git a/linker/plugins/connections/ConnectionsStartup.cs b/linker/plugins/connections/ConnectionsStartup.cs index b70a4c6f..4e9d2343 100644 --- a/linker/plugins/connections/ConnectionsStartup.cs +++ b/linker/plugins/connections/ConnectionsStartup.cs @@ -1,9 +1,9 @@ -using linker.config; -using linker.startup; +using Linker.Config; +using Linker.Startup; using Microsoft.Extensions.DependencyInjection; using System.Reflection; -namespace linker.plugins.connections +namespace Linker.Plugins.Connections { public sealed class ConnectionsStartup : IStartup { @@ -17,21 +17,21 @@ namespace linker.plugins.connections public StartupLoadType LoadType => StartupLoadType.Normal; - public void AddClient(ServiceCollection serviceCollection, Config config, Assembly[] assemblies) + public void AddClient(ServiceCollection serviceCollection, ConfigWrap config, Assembly[] assemblies) { serviceCollection.AddSingleton(); } - public void AddServer(ServiceCollection serviceCollection, Config config, Assembly[] assemblies) + public void AddServer(ServiceCollection serviceCollection, ConfigWrap config, Assembly[] assemblies) { } - public void UseClient(ServiceProvider serviceProvider, Config config, Assembly[] assemblies) + public void UseClient(ServiceProvider serviceProvider, ConfigWrap config, Assembly[] assemblies) { } - public void UseServer(ServiceProvider serviceProvider, Config config, Assembly[] assemblies) + public void UseServer(ServiceProvider serviceProvider, ConfigWrap config, Assembly[] assemblies) { } } diff --git a/linker/plugins/firewall/FireWallStartup.cs b/linker/plugins/firewall/FireWallStartup.cs index da55ac0d..ff6e6036 100644 --- a/linker/plugins/firewall/FireWallStartup.cs +++ b/linker/plugins/firewall/FireWallStartup.cs @@ -1,9 +1,9 @@ -using linker.config; -using linker.startup; +using Linker.Config; +using Linker.Startup; using Microsoft.Extensions.DependencyInjection; using System.Reflection; -namespace linker.plugins.firewall +namespace Linker.Plugins.Firewall { public sealed class FireWallStartup : IStartup { @@ -13,23 +13,23 @@ namespace linker.plugins.firewall public string[] Dependent => new string[] { }; public StartupLoadType LoadType => StartupLoadType.Dependent; - public void AddClient(ServiceCollection serviceCollection, Config config, Assembly[] assemblies) + public void AddClient(ServiceCollection serviceCollection, ConfigWrap config, Assembly[] assemblies) { #if DEBUG #else - linker.libs.FireWallHelper.Write(Path.GetFileNameWithoutExtension(System.Diagnostics.Process.GetCurrentProcess().MainModule.FileName), "./plugins/firewall"); + Linker.Libs.FireWallHelper.Write(Path.GetFileNameWithoutExtension(System.Diagnostics.Process.GetCurrentProcess().MainModule.FileName), "./plugins/firewall"); #endif } - public void AddServer(ServiceCollection serviceCollection, Config config, Assembly[] assemblies) + public void AddServer(ServiceCollection serviceCollection, ConfigWrap config, Assembly[] assemblies) { } - public void UseClient(ServiceProvider serviceProvider, Config config, Assembly[] assemblies) + public void UseClient(ServiceProvider serviceProvider, ConfigWrap config, Assembly[] assemblies) { } - public void UseServer(ServiceProvider serviceProvider, Config config, Assembly[] assemblies) + public void UseServer(ServiceProvider serviceProvider, ConfigWrap config, Assembly[] assemblies) { } } diff --git a/linker/plugins/forward/ForwardApiController.cs b/linker/plugins/forward/ForwardApiController.cs index 3582500e..464797b9 100644 --- a/linker/plugins/forward/ForwardApiController.cs +++ b/linker/plugins/forward/ForwardApiController.cs @@ -1,11 +1,11 @@ -using linker.libs.api; -using linker.libs.extends; -using linker.client.capi; -using linker.client.config; +using Linker.Libs.Api; +using Linker.Libs.Extends; +using Linker.Client.Capi; +using Linker.Client.Config; using System.Net; -using linker.libs; +using Linker.Libs; -namespace linker.plugins.forward +namespace Linker.Plugins.Forward { public sealed class ForwardClientApiController : IApiClientController { diff --git a/linker/plugins/forward/ForwardStartup.cs b/linker/plugins/forward/ForwardStartup.cs index be9de126..04dca501 100644 --- a/linker/plugins/forward/ForwardStartup.cs +++ b/linker/plugins/forward/ForwardStartup.cs @@ -1,10 +1,10 @@ -using linker.config; -using linker.plugins.forward.proxy; -using linker.startup; +using Linker.Config; +using Linker.Plugins.Forward.Proxy; +using Linker.Startup; using Microsoft.Extensions.DependencyInjection; using System.Reflection; -namespace linker.plugins.forward +namespace Linker.Plugins.Forward { public sealed class ForwardStartup : IStartup { @@ -16,7 +16,7 @@ namespace linker.plugins.forward public StartupLoadType LoadType => StartupLoadType.Normal; - public void AddClient(ServiceCollection serviceCollection, Config config, Assembly[] assemblies) + public void AddClient(ServiceCollection serviceCollection, ConfigWrap config, Assembly[] assemblies) { serviceCollection.AddSingleton(); serviceCollection.AddSingleton(); @@ -24,16 +24,16 @@ namespace linker.plugins.forward } - public void AddServer(ServiceCollection serviceCollection, Config config, Assembly[] assemblies) + public void AddServer(ServiceCollection serviceCollection, ConfigWrap config, Assembly[] assemblies) { } - public void UseClient(ServiceProvider serviceProvider, Config config, Assembly[] assemblies) + public void UseClient(ServiceProvider serviceProvider, ConfigWrap config, Assembly[] assemblies) { ForwardTransfer forwardTransfer = serviceProvider.GetService(); } - public void UseServer(ServiceProvider serviceProvider, Config config, Assembly[] assemblies) + public void UseServer(ServiceProvider serviceProvider, ConfigWrap config, Assembly[] assemblies) { } } diff --git a/linker/plugins/forward/ForwardTransfer.cs b/linker/plugins/forward/ForwardTransfer.cs index 93a8ad93..bcdbb206 100644 --- a/linker/plugins/forward/ForwardTransfer.cs +++ b/linker/plugins/forward/ForwardTransfer.cs @@ -1,9 +1,9 @@ -using linker.client; -using linker.client.config; -using linker.plugins.forward.proxy; -using linker.libs; +using Linker.Client; +using Linker.Client.Config; +using Linker.Libs; +using Linker.Plugins.Forward.Proxy; -namespace linker.plugins.forward +namespace Linker.Plugins.Forward { public sealed class ForwardTransfer { @@ -50,12 +50,12 @@ namespace linker.plugins.forward { forwardInfo.Proxy = true; forwardInfo.Msg = string.Empty; - Logger.Instance.Debug($"start forward {forwardInfo.Port}->{forwardInfo.MachineId}->{forwardInfo.TargetEP}"); + LoggerHelper.Instance.Debug($"start forward {forwardInfo.Port}->{forwardInfo.MachineId}->{forwardInfo.TargetEP}"); } else { forwardInfo.Msg = $"start forward {forwardInfo.Port}->{forwardInfo.MachineId}->{forwardInfo.TargetEP} fail"; - Logger.Instance.Error(forwardInfo.Msg); + LoggerHelper.Instance.Error(forwardInfo.Msg); } } @@ -63,7 +63,7 @@ namespace linker.plugins.forward { forwardInfo.Started = false; forwardInfo.Msg = ex.Message; - Logger.Instance.Error(ex); + LoggerHelper.Instance.Error(ex); } } } @@ -73,14 +73,14 @@ namespace linker.plugins.forward { if (forwardInfo.Proxy) { - Logger.Instance.Debug($"stop forward {forwardInfo.Port}->{forwardInfo.MachineId}->{forwardInfo.TargetEP}"); + LoggerHelper.Instance.Debug($"stop forward {forwardInfo.Port}->{forwardInfo.MachineId}->{forwardInfo.TargetEP}"); forwardProxy.Stop(forwardInfo.Port); forwardInfo.Proxy = false; } } catch (Exception ex) { - Logger.Instance.Error(ex); + LoggerHelper.Instance.Error(ex); } } diff --git a/linker/plugins/forward/config/Config.cs b/linker/plugins/forward/config/Config.cs index ce8dd4a6..7ee996e5 100644 --- a/linker/plugins/forward/config/Config.cs +++ b/linker/plugins/forward/config/Config.cs @@ -2,7 +2,7 @@ using System.Net; using System.Text.Json.Serialization; -namespace linker.client.config +namespace Linker.Client.Config { public sealed partial class RunningConfigInfo { diff --git a/linker/plugins/forward/proxy/ForwardProxy.cs b/linker/plugins/forward/proxy/ForwardProxy.cs index aa8b43cd..0502c67a 100644 --- a/linker/plugins/forward/proxy/ForwardProxy.cs +++ b/linker/plugins/forward/proxy/ForwardProxy.cs @@ -1,18 +1,18 @@ -using linker.config; -using linker.plugins.relay; -using linker.tunnel; -using linker.tunnel.connection; -using linker.tunnel.proxy; -using linker.libs; -using linker.libs.extends; +using Linker.Config; +using Linker.Plugins.Relay; +using Linker.Tunnel; +using Linker.Tunnel.Connection; +using Linker.Tunnel.Proxy; +using Linker.Libs; +using Linker.Libs.Extends; using System.Collections.Concurrent; using System.Net; -namespace linker.plugins.forward.proxy +namespace Linker.Plugins.Forward.Proxy { public sealed class ForwardProxy : TunnelProxy { - private readonly Config config; + private readonly ConfigWrap config; private readonly TunnelTransfer tunnelTransfer; private readonly RelayTransfer relayTransfer; @@ -20,7 +20,7 @@ namespace linker.plugins.forward.proxy private readonly ConcurrentDictionary connections = new ConcurrentDictionary(); private readonly ConcurrentDictionary locks = new ConcurrentDictionary(); - public ForwardProxy(Config config,TunnelTransfer tunnelTransfer, RelayTransfer relayTransfer) + public ForwardProxy(ConfigWrap config,TunnelTransfer tunnelTransfer, RelayTransfer relayTransfer) { this.config = config; this.tunnelTransfer = tunnelTransfer; @@ -33,8 +33,8 @@ namespace linker.plugins.forward.proxy } private void OnConnected(ITunnelConnection connection) { - if (Logger.Instance.LoggerLevel <= LoggerTypes.DEBUG) - Logger.Instance.Warning($"TryAdd {connection.GetHashCode()} {connection.TransactionId} {connection.ToJson()}"); + if (LoggerHelper.Instance.LoggerLevel <= LoggerTypes.DEBUG) + LoggerHelper.Instance.Warning($"TryAdd {connection.GetHashCode()} {connection.TransactionId} {connection.ToJson()}"); //把隧道对象添加到缓存,方便下次直接获取 connections.AddOrUpdate(connection.RemoteMachineId, connection, (a, b) => connection); @@ -104,22 +104,22 @@ namespace linker.plugins.forward.proxy return connection; } - if (Logger.Instance.LoggerLevel <= LoggerTypes.DEBUG) Logger.Instance.Debug($"forward tunnel to {machineId}"); + if (LoggerHelper.Instance.LoggerLevel <= LoggerTypes.DEBUG) LoggerHelper.Instance.Debug($"forward tunnel to {machineId}"); //打洞 connection = await tunnelTransfer.ConnectAsync(machineId, "forward"); if (connection != null) { - if (Logger.Instance.LoggerLevel <= LoggerTypes.DEBUG) Logger.Instance.Debug($"forward tunnel to {machineId} success"); + if (LoggerHelper.Instance.LoggerLevel <= LoggerTypes.DEBUG) LoggerHelper.Instance.Debug($"forward tunnel to {machineId} success"); } //打洞失败 if (connection == null) { - if (Logger.Instance.LoggerLevel <= LoggerTypes.DEBUG) Logger.Instance.Debug($"forward relay to {machineId}"); + if (LoggerHelper.Instance.LoggerLevel <= LoggerTypes.DEBUG) LoggerHelper.Instance.Debug($"forward relay to {machineId}"); //尝试中继 connection = await relayTransfer.ConnectAsync(config.Data.Client.Id,machineId, "forward"); if (connection != null) { - if (Logger.Instance.LoggerLevel <= LoggerTypes.DEBUG) Logger.Instance.Debug($"forward relay to {machineId} success"); + if (LoggerHelper.Instance.LoggerLevel <= LoggerTypes.DEBUG) LoggerHelper.Instance.Debug($"forward relay to {machineId} success"); } } if (connection != null) diff --git a/linker/plugins/logger/LoggerController.cs b/linker/plugins/logger/LoggerController.cs index dae28ac5..cc5834d0 100644 --- a/linker/plugins/logger/LoggerController.cs +++ b/linker/plugins/logger/LoggerController.cs @@ -1,20 +1,20 @@ -using linker.libs.extends; -using linker.libs.api; -using linker.libs; -using linker.config; -using linker.client.capi; +using Linker.Libs.Extends; +using Linker.Libs.Api; +using Linker.Libs; +using Linker.Config; +using Linker.Client.Capi; -namespace linker.plugins.logger +namespace Linker.Plugins.Logger { public sealed class LoggerClientApiController : IApiClientController { private readonly List loggers = new List(); - private readonly Config config; - public LoggerClientApiController(Config config) + private readonly ConfigWrap config; + public LoggerClientApiController(ConfigWrap config) { this.config = config; - Logger.Instance.OnLogger += (LoggerModel logger) => + LoggerHelper.Instance.OnLogger += (LoggerModel logger) => { loggers.Add(logger); if (loggers.Count > config.Data.Common.LoggerSize) diff --git a/linker/plugins/logger/LoggerStartup.cs b/linker/plugins/logger/LoggerStartup.cs index d3b53832..a90d6e03 100644 --- a/linker/plugins/logger/LoggerStartup.cs +++ b/linker/plugins/logger/LoggerStartup.cs @@ -1,9 +1,9 @@ -using linker.config; -using linker.startup; +using Linker.Config; +using Linker.Startup; using Microsoft.Extensions.DependencyInjection; using System.Reflection; -namespace linker.plugins.logger +namespace Linker.Plugins.Logger { public sealed class LoggerStartup : IStartup { @@ -17,22 +17,22 @@ namespace linker.plugins.logger public StartupLoadType LoadType => StartupLoadType.Normal; - public void AddClient(ServiceCollection serviceCollection, Config config, Assembly[] assemblies) + public void AddClient(ServiceCollection serviceCollection, ConfigWrap config, Assembly[] assemblies) { serviceCollection.AddSingleton(); } - public void AddServer(ServiceCollection serviceCollection, Config config, Assembly[] assemblies) + public void AddServer(ServiceCollection serviceCollection, ConfigWrap config, Assembly[] assemblies) { } - public void UseClient(ServiceProvider serviceProvider, Config config, Assembly[] assemblies) + public void UseClient(ServiceProvider serviceProvider, ConfigWrap config, Assembly[] assemblies) { LoggerClientApiController logger = serviceProvider.GetService(); } - public void UseServer(ServiceProvider serviceProvider, Config config, Assembly[] assemblies) + public void UseServer(ServiceProvider serviceProvider, ConfigWrap config, Assembly[] assemblies) { } } diff --git a/linker/plugins/relay/RelayApiController.cs b/linker/plugins/relay/RelayApiController.cs index f98bc5e6..ef0188b5 100644 --- a/linker/plugins/relay/RelayApiController.cs +++ b/linker/plugins/relay/RelayApiController.cs @@ -1,25 +1,25 @@ -using linker.client; -using linker.client.capi; -using linker.config; -using linker.plugins.relay.messenger; -using linker.server; -using linker.libs.api; -using linker.libs.extends; +using Linker.Client; +using Linker.Client.Capi; +using Linker.Config; +using Linker.Plugins.Relay.Messenger; +using Linker.Server; +using Linker.Libs.Api; +using Linker.Libs.Extends; using MemoryPack; -namespace linker.plugins.relay +namespace Linker.Plugins.Relay { /// /// 中继管理接口 /// public sealed class RelayApiController : IApiClientController { - private readonly Config config; + private readonly ConfigWrap config; private readonly RelayTransfer relayTransfer; private readonly ClientSignInState clientSignInState; private readonly MessengerSender messengerSender; - public RelayApiController(Config config, RelayTransfer relayTransfer, ClientSignInState clientSignInState, MessengerSender messengerSender) + public RelayApiController(ConfigWrap config, RelayTransfer relayTransfer, ClientSignInState clientSignInState, MessengerSender messengerSender) { this.config = config; this.relayTransfer = relayTransfer; diff --git a/linker/plugins/relay/RelayStartup.cs b/linker/plugins/relay/RelayStartup.cs index c64a641f..4edbb7c2 100644 --- a/linker/plugins/relay/RelayStartup.cs +++ b/linker/plugins/relay/RelayStartup.cs @@ -1,11 +1,11 @@ -using linker.config; -using linker.plugins.relay.messenger; -using linker.plugins.relay.transport; -using linker.startup; +using Linker.Config; +using Linker.Plugins.Relay.Messenger; +using Linker.Plugins.Relay.Transport; +using Linker.Startup; using Microsoft.Extensions.DependencyInjection; using System.Reflection; -namespace linker.plugins.relay +namespace Linker.Plugins.Relay { /// /// 中继插件 @@ -21,7 +21,7 @@ namespace linker.plugins.relay public StartupLoadType LoadType => StartupLoadType.Normal; - public void AddClient(ServiceCollection serviceCollection, Config config, Assembly[] assemblies) + public void AddClient(ServiceCollection serviceCollection, ConfigWrap config, Assembly[] assemblies) { serviceCollection.AddSingleton(); serviceCollection.AddSingleton(); @@ -30,18 +30,18 @@ namespace linker.plugins.relay } - public void AddServer(ServiceCollection serviceCollection, Config config, Assembly[] assemblies) + public void AddServer(ServiceCollection serviceCollection, ConfigWrap config, Assembly[] assemblies) { serviceCollection.AddSingleton(); } - public void UseClient(ServiceProvider serviceProvider, Config config, Assembly[] assemblies) + public void UseClient(ServiceProvider serviceProvider, ConfigWrap config, Assembly[] assemblies) { RelayTransfer relayTransfer = serviceProvider.GetService(); relayTransfer.Load(assemblies); } - public void UseServer(ServiceProvider serviceProvider, Config config, Assembly[] assemblies) + public void UseServer(ServiceProvider serviceProvider, ConfigWrap config, Assembly[] assemblies) { } } diff --git a/linker/plugins/relay/RelayTransfer.cs b/linker/plugins/relay/RelayTransfer.cs index 6914d30b..bbdf1569 100644 --- a/linker/plugins/relay/RelayTransfer.cs +++ b/linker/plugins/relay/RelayTransfer.cs @@ -1,15 +1,15 @@ -using linker.client.config; -using linker.config; -using linker.plugins.relay.transport; -using linker.tunnel.connection; -using linker.libs; -using linker.libs.extends; +using Linker.Client.Config; +using Linker.Config; +using Linker.Plugins.Relay.Transport; +using Linker.Tunnel.Connection; +using Linker.Libs; +using Linker.Libs.Extends; using Microsoft.Extensions.DependencyInjection; using System.Collections.Concurrent; using System.Net; using System.Reflection; -namespace linker.plugins.relay +namespace Linker.Plugins.Relay { /// /// 中继 @@ -24,7 +24,7 @@ namespace linker.plugins.relay private ConcurrentDictionary connectingDic = new ConcurrentDictionary(); private Dictionary>> OnConnected { get; } = new Dictionary>>(); - public RelayTransfer(RunningConfig running, ServiceProvider serviceProvider, Config config) + public RelayTransfer(RunningConfig running, ServiceProvider serviceProvider, ConfigWrap config) { this.running = running; this.serviceProvider = serviceProvider; @@ -52,7 +52,7 @@ namespace linker.plugins.relay IEnumerable types = ReflectionHelper.GetInterfaceSchieves(assembs, typeof(ITransport)); transports = types.Select(c => (ITransport)serviceProvider.GetService(c)).Where(c => c != null).Where(c => string.IsNullOrWhiteSpace(c.Name) == false).ToList(); - Logger.Instance.Warning($"load relay transport:{string.Join(",", transports.Select(c => c.Name))}"); + LoggerHelper.Instance.Warning($"load relay transport:{string.Join(",", transports.Select(c => c.Name))}"); } /// /// 获取所有中继协议 @@ -136,23 +136,23 @@ namespace linker.plugins.relay SSL = item.SSL }; - Logger.Instance.Info($"relay to {relayInfo.RemoteMachineId}->{relayInfo.RemoteMachineName} {relayInfo.ToJson()}"); + LoggerHelper.Instance.Info($"relay to {relayInfo.RemoteMachineId}->{relayInfo.RemoteMachineName} {relayInfo.ToJson()}"); ITunnelConnection connection = await transport.RelayAsync(relayInfo); if (connection != null) { - Logger.Instance.Debug($"relay to {relayInfo.RemoteMachineId}->{relayInfo.RemoteMachineName} success,{relayInfo.ToJson()}"); + LoggerHelper.Instance.Debug($"relay to {relayInfo.RemoteMachineId}->{relayInfo.RemoteMachineName} success,{relayInfo.ToJson()}"); ConnectedCallback(relayInfo, connection); return connection; } else { - Logger.Instance.Error($"relay to {relayInfo.RemoteMachineId}->{relayInfo.RemoteMachineName} fail,{relayInfo.ToJson()}"); + LoggerHelper.Instance.Error($"relay to {relayInfo.RemoteMachineId}->{relayInfo.RemoteMachineName} fail,{relayInfo.ToJson()}"); } } } catch (Exception ex) { - Logger.Instance.Error(ex); + LoggerHelper.Instance.Error(ex); } finally { @@ -181,7 +181,7 @@ namespace linker.plugins.relay ITunnelConnection connection = await _transports.OnBeginAsync(relayInfo); if (connection != null) { - Logger.Instance.Debug($"relay from {relayInfo.RemoteMachineId}->{relayInfo.RemoteMachineName} success,{relayInfo.ToJson()}"); + LoggerHelper.Instance.Debug($"relay from {relayInfo.RemoteMachineId}->{relayInfo.RemoteMachineName} success,{relayInfo.ToJson()}"); ConnectedCallback(relayInfo, connection); return true; } @@ -190,9 +190,9 @@ namespace linker.plugins.relay } catch (Exception ex) { - if(Logger.Instance.LoggerLevel <= LoggerTypes.DEBUG) + if(LoggerHelper.Instance.LoggerLevel <= LoggerTypes.DEBUG) { - Logger.Instance.Error(ex); + LoggerHelper.Instance.Error(ex); } } finally diff --git a/linker/plugins/relay/config/Config.cs b/linker/plugins/relay/config/Config.cs index 2bc9a6f6..9dfabfdd 100644 --- a/linker/plugins/relay/config/Config.cs +++ b/linker/plugins/relay/config/Config.cs @@ -1,10 +1,10 @@ -using linker.config; +using Linker.Config; using LiteDB; using MemoryPack; using System.Diagnostics.CodeAnalysis; -namespace linker.client.config +namespace Linker.Client.Config { public sealed partial class RunningConfigInfo { @@ -19,7 +19,7 @@ namespace linker.client.config } -namespace linker.config +namespace Linker.Config { public partial class ConfigServerInfo { diff --git a/linker/plugins/relay/messenger/RelayMessenger.cs b/linker/plugins/relay/messenger/RelayMessenger.cs index 17d41f76..ae975cb8 100644 --- a/linker/plugins/relay/messenger/RelayMessenger.cs +++ b/linker/plugins/relay/messenger/RelayMessenger.cs @@ -1,13 +1,13 @@ -using linker.config; -using linker.plugins.relay.transport; -using linker.plugins.signin.messenger; -using linker.server; -using linker.libs; -using linker.libs.extends; +using Linker.Config; +using Linker.Plugins.Relay.Transport; +using Linker.Plugins.Signin.Messenger; +using Linker.Server; +using Linker.Libs; +using Linker.Libs.Extends; using MemoryPack; using System.Collections.Concurrent; -namespace linker.plugins.relay.messenger +namespace Linker.Plugins.Relay.Messenger { /// /// 中继客户端 @@ -50,14 +50,14 @@ namespace linker.plugins.relay.messenger /// public sealed class RelayServerMessenger : IMessenger { - private readonly Config config; + private readonly ConfigWrap config; private readonly MessengerSender messengerSender; private readonly SignCaching signCaching; private readonly ConcurrentDictionary dic = new ConcurrentDictionary(); private ulong flowingId = 0; - public RelayServerMessenger(Config config, MessengerSender messengerSender, SignCaching signCaching) + public RelayServerMessenger(ConfigWrap config, MessengerSender messengerSender, SignCaching signCaching) { this.config = config; this.messengerSender = messengerSender; diff --git a/linker/plugins/relay/messenger/RelayMessengerIds.cs b/linker/plugins/relay/messenger/RelayMessengerIds.cs index a4680786..2b16b6f2 100644 --- a/linker/plugins/relay/messenger/RelayMessengerIds.cs +++ b/linker/plugins/relay/messenger/RelayMessengerIds.cs @@ -1,4 +1,4 @@ -namespace linker.plugins.relay.messenger +namespace Linker.Plugins.Relay.Messenger { public enum RelayMessengerIds : ushort { diff --git a/linker/plugins/relay/transport/ITransport.cs b/linker/plugins/relay/transport/ITransport.cs index 18ed2213..ee311b96 100644 --- a/linker/plugins/relay/transport/ITransport.cs +++ b/linker/plugins/relay/transport/ITransport.cs @@ -1,9 +1,9 @@ -using linker.config; -using linker.tunnel.connection; +using Linker.Config; +using Linker.Tunnel.Connection; using MemoryPack; using System.Net; -namespace linker.plugins.relay.transport +namespace Linker.Plugins.Relay.Transport { /// /// 中继接口 diff --git a/linker/plugins/relay/transport/TransportSelfHost.cs b/linker/plugins/relay/transport/TransportSelfHost.cs index 98176aab..3c9df71c 100644 --- a/linker/plugins/relay/transport/TransportSelfHost.cs +++ b/linker/plugins/relay/transport/TransportSelfHost.cs @@ -1,9 +1,9 @@ -using linker.config; -using linker.plugins.relay.messenger; -using linker.server; -using linker.tunnel.connection; -using linker.libs; -using linker.libs.extends; +using Linker.Config; +using Linker.Plugins.Relay.Messenger; +using Linker.Server; +using Linker.Tunnel.Connection; +using Linker.Libs; +using Linker.Libs.Extends; using MemoryPack; using System.Buffers; using System.Net; @@ -12,7 +12,7 @@ using System.Net.Sockets; using System.Security.Authentication; using System.Security.Cryptography.X509Certificates; -namespace linker.plugins.relay.transport +namespace Linker.Plugins.Relay.Transport { public sealed class TransportSelfHost : ITransport { @@ -26,7 +26,7 @@ namespace linker.plugins.relay.transport private X509Certificate2 certificate; - public TransportSelfHost(TcpServer tcpServer, MessengerSender messengerSender, Config config) + public TransportSelfHost(TcpServer tcpServer, MessengerSender messengerSender, ConfigWrap config) { this.tcpServer = tcpServer; this.messengerSender = messengerSender; @@ -92,9 +92,9 @@ namespace linker.plugins.relay.transport } catch (Exception ex) { - if (Logger.Instance.LoggerLevel <= LoggerTypes.DEBUG) + if (LoggerHelper.Instance.LoggerLevel <= LoggerTypes.DEBUG) { - Logger.Instance.Error(ex); + LoggerHelper.Instance.Error(ex); } } return null; @@ -153,9 +153,9 @@ namespace linker.plugins.relay.transport } catch (Exception ex) { - if (Logger.Instance.LoggerLevel <= LoggerTypes.DEBUG) + if (LoggerHelper.Instance.LoggerLevel <= LoggerTypes.DEBUG) { - Logger.Instance.Error(ex); + LoggerHelper.Instance.Error(ex); } } return null; diff --git a/linker/plugins/sforward/SForwardApiController.cs b/linker/plugins/sforward/SForwardApiController.cs index 3165bb74..c99a43aa 100644 --- a/linker/plugins/sforward/SForwardApiController.cs +++ b/linker/plugins/sforward/SForwardApiController.cs @@ -1,13 +1,13 @@ -using linker.libs.api; -using linker.libs.extends; -using linker.client.capi; -using linker.client.config; -using linker.server; -using linker.client; -using linker.plugins.sforward.messenger; +using Linker.Libs.Api; +using Linker.Libs.Extends; +using Linker.Client.Capi; +using Linker.Client.Config; +using Linker.Server; +using Linker.Client; +using Linker.Plugins.SForward.Messenger; using MemoryPack; -namespace linker.plugins.sforward +namespace Linker.Plugins.SForward { public sealed class SForwardClientApiController : IApiClientController { diff --git a/linker/plugins/sforward/SForwardStartup.cs b/linker/plugins/sforward/SForwardStartup.cs index e0fb5c78..7a097fd4 100644 --- a/linker/plugins/sforward/SForwardStartup.cs +++ b/linker/plugins/sforward/SForwardStartup.cs @@ -1,13 +1,14 @@ -using linker.config; -using linker.plugins.sforward.config; -using linker.plugins.sforward.messenger; -using linker.plugins.sforward.validator; -using linker.startup; -using linker.libs; +using Linker.Config; +using Linker.Plugins.SForward.Config; +using Linker.Plugins.SForward.Messenger; +using Linker.Plugins.SForward.Validator; +using Linker.Startup; using Microsoft.Extensions.DependencyInjection; using System.Reflection; +using Linker.Plugins.SForward.Proxy; +using Linker.Libs; -namespace linker.plugins.sforward +namespace Linker.Plugins.SForward { public sealed class SForwardStartup : IStartup { @@ -21,7 +22,7 @@ namespace linker.plugins.sforward public StartupLoadType LoadType => StartupLoadType.Normal; - public void AddClient(ServiceCollection serviceCollection, Config config, Assembly[] assemblies) + public void AddClient(ServiceCollection serviceCollection, ConfigWrap config, Assembly[] assemblies) { Add(serviceCollection, config, assemblies); serviceCollection.AddSingleton(); @@ -29,17 +30,17 @@ namespace linker.plugins.sforward serviceCollection.AddSingleton(); } - public void AddServer(ServiceCollection serviceCollection, Config config, Assembly[] assemblies) + public void AddServer(ServiceCollection serviceCollection, ConfigWrap config, Assembly[] assemblies) { Add(serviceCollection, config, assemblies); serviceCollection.AddSingleton(); serviceCollection.AddSingleton(); - serviceCollection.AddSingleton(); + serviceCollection.AddSingleton(); } bool added = false; - private void Add(ServiceCollection serviceCollection, Config config, Assembly[] assemblies) + private void Add(ServiceCollection serviceCollection, ConfigWrap config, Assembly[] assemblies) { if (added == false) { @@ -48,20 +49,20 @@ namespace linker.plugins.sforward } } - public void UseClient(ServiceProvider serviceProvider, Config config, Assembly[] assemblies) + public void UseClient(ServiceProvider serviceProvider, ConfigWrap config, Assembly[] assemblies) { SForwardTransfer forwardTransfer = serviceProvider.GetService(); } - public void UseServer(ServiceProvider serviceProvider, Config config, Assembly[] assemblies) + public void UseServer(ServiceProvider serviceProvider, ConfigWrap config, Assembly[] assemblies) { SForwardProxy sForwardProxy = serviceProvider.GetService(); if (config.Data.Server.SForward.WebPort > 0) { sForwardProxy.Start(config.Data.Server.SForward.WebPort, true); - Logger.Instance.Info($"listen server forward web in {config.Data.Server.SForward.WebPort}"); + LoggerHelper.Instance.Info($"listen server forward web in {config.Data.Server.SForward.WebPort}"); } - Logger.Instance.Info($"listen server forward tunnel in {string.Join("-", config.Data.Server.SForward.TunnelPortRange)}"); + LoggerHelper.Instance.Info($"listen server forward tunnel in {string.Join("-", config.Data.Server.SForward.TunnelPortRange)}"); } } } diff --git a/linker/plugins/sforward/SForwardTransfer.cs b/linker/plugins/sforward/SForwardTransfer.cs index b26c22f9..68a60691 100644 --- a/linker/plugins/sforward/SForwardTransfer.cs +++ b/linker/plugins/sforward/SForwardTransfer.cs @@ -1,13 +1,13 @@ -using linker.client.config; -using linker.client; -using linker.libs; -using linker.server; -using linker.plugins.sforward.messenger; +using Linker.Client.Config; +using Linker.Client; +using Linker.Libs; +using Linker.Server; +using Linker.Plugins.SForward.Messenger; using MemoryPack; -using linker.plugins.sforward.config; +using Linker.Plugins.SForward.Config; using System.Text; -namespace linker.plugins.sforward +namespace Linker.Plugins.SForward { public sealed class SForwardTransfer { @@ -65,13 +65,13 @@ namespace linker.plugins.sforward if (sForwardAddResultInfo.Success) { forwardInfo.Proxy = true; - Logger.Instance.Debug(sForwardAddResultInfo.Message); + LoggerHelper.Instance.Debug(sForwardAddResultInfo.Message); forwardInfo.Msg = string.Empty; } else { forwardInfo.Started = false; - Logger.Instance.Error(sForwardAddResultInfo.Message); + LoggerHelper.Instance.Error(sForwardAddResultInfo.Message); forwardInfo.Msg = sForwardAddResultInfo.Message; } @@ -81,7 +81,7 @@ namespace linker.plugins.sforward catch (Exception ex) { forwardInfo.Started = false; - Logger.Instance.Error(ex); + LoggerHelper.Instance.Error(ex); } } } @@ -104,12 +104,12 @@ namespace linker.plugins.sforward if (sForwardAddResultInfo.Success) { forwardInfo.Proxy = false; - Logger.Instance.Debug(sForwardAddResultInfo.Message); + LoggerHelper.Instance.Debug(sForwardAddResultInfo.Message); } else { forwardInfo.Started = true; - Logger.Instance.Error(sForwardAddResultInfo.Message); + LoggerHelper.Instance.Error(sForwardAddResultInfo.Message); } } @@ -118,7 +118,7 @@ namespace linker.plugins.sforward } catch (Exception ex) { - Logger.Instance.Error(ex); + LoggerHelper.Instance.Error(ex); } } diff --git a/linker/plugins/sforward/config/Config.cs b/linker/plugins/sforward/config/Config.cs index aed7c790..099d8f69 100644 --- a/linker/plugins/sforward/config/Config.cs +++ b/linker/plugins/sforward/config/Config.cs @@ -1,11 +1,11 @@ -using linker.libs; +using Linker.Libs; using LiteDB; using MemoryPack; using System.Net; using System.Text.Json.Serialization; -namespace linker.client.config +namespace Linker.Client.Config { public sealed partial class RunningConfigInfo { @@ -32,7 +32,7 @@ namespace linker.client.config } -namespace linker.config +namespace Linker.Config { public partial class ConfigServerInfo { @@ -50,7 +50,7 @@ namespace linker.config } -namespace linker.plugins.sforward.config +namespace Linker.Plugins.SForward.Config { [MemoryPackable] public sealed partial class SForwardAddInfo diff --git a/linker/plugins/sforward/config/ISForwardServerCahing.cs b/linker/plugins/sforward/config/ISForwardServerCahing.cs index a6c6e5b1..302539e6 100644 --- a/linker/plugins/sforward/config/ISForwardServerCahing.cs +++ b/linker/plugins/sforward/config/ISForwardServerCahing.cs @@ -1,4 +1,4 @@ -namespace linker.plugins.sforward.config +namespace Linker.Plugins.SForward.Config { public interface ISForwardServerCahing { diff --git a/linker/plugins/sforward/config/SForwardServerCahing.cs b/linker/plugins/sforward/config/SForwardServerCahing.cs index afcd1971..3133425a 100644 --- a/linker/plugins/sforward/config/SForwardServerCahing.cs +++ b/linker/plugins/sforward/config/SForwardServerCahing.cs @@ -1,6 +1,6 @@ using System.Collections.Concurrent; -namespace linker.plugins.sforward.config +namespace Linker.Plugins.SForward.Config { public sealed class SForwardServerCahing : ISForwardServerCahing { diff --git a/linker/plugins/sforward/messenger/SForwardMessenger.cs b/linker/plugins/sforward/messenger/SForwardMessenger.cs index 7a3b0aa1..dc92bca8 100644 --- a/linker/plugins/sforward/messenger/SForwardMessenger.cs +++ b/linker/plugins/sforward/messenger/SForwardMessenger.cs @@ -1,12 +1,12 @@ -using linker.client.config; -using linker.plugins.sforward.config; -using linker.plugins.sforward.validator; -using linker.plugins.signin.messenger; -using linker.server; -using linker.libs.extends; +using Linker.Client.Config; +using Linker.Plugins.SForward.Config; +using Linker.Plugins.SForward.Validator; +using Linker.Plugins.Signin.Messenger; +using Linker.Server; using MemoryPack; +using Linker.Plugins.SForward.Proxy; -namespace linker.plugins.sforward.messenger +namespace Linker.Plugins.SForward.Messenger { public sealed class SForwardServerMessenger : IMessenger { diff --git a/linker/plugins/sforward/messenger/SForwardMessengerIds.cs b/linker/plugins/sforward/messenger/SForwardMessengerIds.cs index 0afdf99e..01e6c9d9 100644 --- a/linker/plugins/sforward/messenger/SForwardMessengerIds.cs +++ b/linker/plugins/sforward/messenger/SForwardMessengerIds.cs @@ -1,4 +1,4 @@ -namespace linker.plugins.sforward.messenger +namespace Linker.Plugins.SForward.Messenger { public enum SForwardMessengerIds : ushort { diff --git a/linker/plugins/sforward/proxy/SForwardProxy.cs b/linker/plugins/sforward/proxy/SForwardProxy.cs index d7148d5a..a415c028 100644 --- a/linker/plugins/sforward/proxy/SForwardProxy.cs +++ b/linker/plugins/sforward/proxy/SForwardProxy.cs @@ -1,7 +1,7 @@ -using linker.libs; +using Linker.Libs; using System.Text; -namespace linker.plugins.sforward +namespace Linker.Plugins.SForward.Proxy { public partial class SForwardProxy { diff --git a/linker/plugins/sforward/proxy/SForwardProxyTcp.cs b/linker/plugins/sforward/proxy/SForwardProxyTcp.cs index 29fd6d5a..187158b7 100644 --- a/linker/plugins/sforward/proxy/SForwardProxyTcp.cs +++ b/linker/plugins/sforward/proxy/SForwardProxyTcp.cs @@ -1,12 +1,12 @@ -using linker.libs; -using linker.libs.extends; +using Linker.Libs; +using Linker.Libs.Extends; using System.Buffers; using System.Collections.Concurrent; using System.Net; using System.Net.Sockets; using System.Text; -namespace linker.plugins.sforward +namespace Linker.Plugins.SForward.Proxy { public partial class SForwardProxy { @@ -55,7 +55,7 @@ namespace linker.plugins.sforward } catch (Exception ex) { - Logger.Instance.Error(ex); + LoggerHelper.Instance.Error(ex); token.Clear(); } } @@ -94,7 +94,7 @@ namespace linker.plugins.sforward } catch (Exception ex) { - Logger.Instance.Error(ex); + LoggerHelper.Instance.Error(ex); } } private async Task BindReceive(AsyncUserToken token) @@ -222,9 +222,9 @@ namespace linker.plugins.sforward } catch (Exception ex) { - if (Logger.Instance.LoggerLevel <= LoggerTypes.DEBUG) + if (LoggerHelper.Instance.LoggerLevel <= LoggerTypes.DEBUG) { - Logger.Instance.Error(ex); + LoggerHelper.Instance.Error(ex); } } } diff --git a/linker/plugins/sforward/proxy/SForwardProxyUdp.cs b/linker/plugins/sforward/proxy/SForwardProxyUdp.cs index abab7ae2..f8de5e54 100644 --- a/linker/plugins/sforward/proxy/SForwardProxyUdp.cs +++ b/linker/plugins/sforward/proxy/SForwardProxyUdp.cs @@ -1,11 +1,11 @@ -using linker.libs; -using linker.libs.extends; +using Linker.Libs; +using Linker.Libs.Extends; using System.Buffers; using System.Collections.Concurrent; using System.Net; using System.Net.Sockets; -namespace linker.plugins.sforward +namespace Linker.Plugins.SForward.Proxy { public partial class SForwardProxy { @@ -99,9 +99,9 @@ namespace linker.plugins.sforward } catch (Exception ex) { - if (Logger.Instance.LoggerLevel <= LoggerTypes.DEBUG) + if (LoggerHelper.Instance.LoggerLevel <= LoggerTypes.DEBUG) { - Logger.Instance.Error(ex); + LoggerHelper.Instance.Error(ex); } } finally @@ -115,9 +115,9 @@ namespace linker.plugins.sforward } catch (Exception ex) { - if (Logger.Instance.LoggerLevel <= LoggerTypes.DEBUG) + if (LoggerHelper.Instance.LoggerLevel <= LoggerTypes.DEBUG) { - Logger.Instance.Error(ex); + LoggerHelper.Instance.Error(ex); } if (udpListens.TryRemove(token.ListenPort, out token)) { @@ -172,9 +172,9 @@ namespace linker.plugins.sforward } catch (Exception ex) { - if (Logger.Instance.LoggerLevel <= LoggerTypes.DEBUG) + if (LoggerHelper.Instance.LoggerLevel <= LoggerTypes.DEBUG) { - Logger.Instance.Error(ex); + LoggerHelper.Instance.Error(ex); } serviceUdp?.SafeClose(); @@ -194,9 +194,9 @@ namespace linker.plugins.sforward } catch (Exception ex) { - if (Logger.Instance.LoggerLevel <= LoggerTypes.DEBUG) + if (LoggerHelper.Instance.LoggerLevel <= LoggerTypes.DEBUG) { - Logger.Instance.Error(ex); + LoggerHelper.Instance.Error(ex); } serviceUdp?.Close(); diff --git a/linker/plugins/sforward/validator/IValidator.cs b/linker/plugins/sforward/validator/IValidator.cs index a13ee9c9..ec9df5fb 100644 --- a/linker/plugins/sforward/validator/IValidator.cs +++ b/linker/plugins/sforward/validator/IValidator.cs @@ -1,7 +1,7 @@ -using linker.plugins.sforward.config; -using linker.server; +using Linker.Plugins.SForward.Config; +using Linker.Server; -namespace linker.plugins.sforward.validator +namespace Linker.Plugins.SForward.Validator { public interface IValidator { diff --git a/linker/plugins/sforward/validator/Validator.cs b/linker/plugins/sforward/validator/Validator.cs index 34081a04..8fe047aa 100644 --- a/linker/plugins/sforward/validator/Validator.cs +++ b/linker/plugins/sforward/validator/Validator.cs @@ -1,13 +1,13 @@ -using linker.config; -using linker.plugins.sforward.config; -using linker.server; +using Linker.Config; +using Linker.Plugins.SForward.Config; +using Linker.Server; -namespace linker.plugins.sforward.validator +namespace Linker.Plugins.SForward.Validator { public sealed class Validator : IValidator { - private readonly Config config; - public Validator(Config config) + private readonly ConfigWrap config; + public Validator(ConfigWrap config) { this.config = config; } diff --git a/linker/plugins/signIn/SignInApiController.cs b/linker/plugins/signIn/SignInApiController.cs index df8e24a7..c03cc1d9 100644 --- a/linker/plugins/signIn/SignInApiController.cs +++ b/linker/plugins/signIn/SignInApiController.cs @@ -1,26 +1,26 @@ -using linker.config; -using linker.plugins.signin.messenger; -using linker.libs.api; -using linker.libs.extends; -using linker.client; -using linker.server; +using Linker.Config; +using Linker.Plugins.Signin.Messenger; +using Linker.Libs.Api; +using Linker.Libs.Extends; +using Linker.Client; +using Linker.Server; using MemoryPack; -using linker.client.capi; -using linker.client.config; +using Linker.Client.Capi; +using Linker.Client.Config; using System.Diagnostics; -using linker.libs; +using Linker.Libs; -namespace linker.plugins.signin +namespace Linker.Plugins.Signin { public sealed class SignInClientApiController : IApiClientController { private readonly RunningConfig runningConfig; - private readonly Config config; + private readonly ConfigWrap config; private readonly ClientSignInState clientSignInState; private readonly ClientSignInTransfer clientSignInTransfer; private readonly MessengerSender messengerSender; - public SignInClientApiController(RunningConfig runningConfig, Config config, ClientSignInState clientSignInState, ClientSignInTransfer clientSignInTransfer, MessengerSender messengerSender) + public SignInClientApiController(RunningConfig runningConfig, ConfigWrap config, ClientSignInState clientSignInState, ClientSignInTransfer clientSignInTransfer, MessengerSender messengerSender) { this.runningConfig = runningConfig; this.config = config; diff --git a/linker/plugins/signIn/SignInStartup.cs b/linker/plugins/signIn/SignInStartup.cs index f9a4a607..57e6534e 100644 --- a/linker/plugins/signIn/SignInStartup.cs +++ b/linker/plugins/signIn/SignInStartup.cs @@ -1,10 +1,10 @@ -using linker.config; -using linker.plugins.signin.messenger; -using linker.startup; +using Linker.Config; +using Linker.Plugins.Signin.Messenger; +using Linker.Startup; using Microsoft.Extensions.DependencyInjection; using System.Reflection; -namespace linker.plugins.signin +namespace Linker.Plugins.Signin { public sealed class SignInStartup : IStartup { @@ -18,23 +18,23 @@ namespace linker.plugins.signin public StartupLoadType LoadType => StartupLoadType.Normal; - public void AddClient(ServiceCollection serviceCollection, Config config, Assembly[] assemblies) + public void AddClient(ServiceCollection serviceCollection, ConfigWrap config, Assembly[] assemblies) { serviceCollection.AddSingleton(); serviceCollection.AddSingleton(); } - public void AddServer(ServiceCollection serviceCollection, Config config, Assembly[] assemblies) + public void AddServer(ServiceCollection serviceCollection, ConfigWrap config, Assembly[] assemblies) { serviceCollection.AddSingleton(); serviceCollection.AddSingleton(); } - public void UseClient(ServiceProvider serviceProvider, Config config, Assembly[] assemblies) + public void UseClient(ServiceProvider serviceProvider, ConfigWrap config, Assembly[] assemblies) { } - public void UseServer(ServiceProvider serviceProvider, Config config, Assembly[] assemblies) + public void UseServer(ServiceProvider serviceProvider, ConfigWrap config, Assembly[] assemblies) { } } diff --git a/linker/plugins/signIn/messenger/SignCaching.cs b/linker/plugins/signIn/messenger/SignCaching.cs index 9d38dca9..55e1f3cf 100644 --- a/linker/plugins/signIn/messenger/SignCaching.cs +++ b/linker/plugins/signIn/messenger/SignCaching.cs @@ -1,13 +1,13 @@ -using linker.database; -using linker.server; -using linker.libs; +using Linker.Store; +using Linker.Server; +using Linker.Libs; using LiteDB; using MemoryPack; using System.Collections.Concurrent; using System.Net; using System.Text.Json.Serialization; -namespace linker.plugins.signin.messenger +namespace Linker.Plugins.Signin.Messenger { public sealed class SignCaching { diff --git a/linker/plugins/signIn/messenger/SignInMessenger.cs b/linker/plugins/signIn/messenger/SignInMessenger.cs index f2f16c07..e3c119f1 100644 --- a/linker/plugins/signIn/messenger/SignInMessenger.cs +++ b/linker/plugins/signIn/messenger/SignInMessenger.cs @@ -1,16 +1,16 @@ -using linker.client; -using linker.config; -using linker.server; -using linker.libs; +using Linker.Client; +using Linker.Config; +using Linker.Server; +using Linker.Libs; using MemoryPack; -namespace linker.plugins.signin.messenger +namespace Linker.Plugins.Signin.Messenger { public sealed class SignInClientMessenger : IMessenger { - private readonly Config config; + private readonly ConfigWrap config; private readonly ClientSignInTransfer clientSignInTransfer; - public SignInClientMessenger(Config config, ClientSignInTransfer clientSignInTransfer) + public SignInClientMessenger(ConfigWrap config, ClientSignInTransfer clientSignInTransfer) { this.config = config; this.clientSignInTransfer = clientSignInTransfer; @@ -34,10 +34,10 @@ namespace linker.plugins.signin.messenger public sealed class SignInServerMessenger : IMessenger { private readonly SignCaching signCaching; - private readonly Config config; + private readonly ConfigWrap config; private readonly MessengerSender messengerSender; - public SignInServerMessenger(SignCaching signCaching, Config config, MessengerSender messengerSender) + public SignInServerMessenger(SignCaching signCaching, ConfigWrap config, MessengerSender messengerSender) { this.signCaching = signCaching; this.config = config; diff --git a/linker/plugins/signIn/messenger/SignInMessengerIds.cs b/linker/plugins/signIn/messenger/SignInMessengerIds.cs index 06c4de7e..dacad9e1 100644 --- a/linker/plugins/signIn/messenger/SignInMessengerIds.cs +++ b/linker/plugins/signIn/messenger/SignInMessengerIds.cs @@ -1,4 +1,4 @@ -namespace linker.plugins.signin.messenger +namespace Linker.Plugins.Signin.Messenger { public enum SignInMessengerIds : ushort { diff --git a/linker/plugins/tunnel/TunnelAdapter.cs b/linker/plugins/tunnel/TunnelAdapter.cs index 1109296e..4f389cfc 100644 --- a/linker/plugins/tunnel/TunnelAdapter.cs +++ b/linker/plugins/tunnel/TunnelAdapter.cs @@ -1,17 +1,17 @@ -using linker.client; -using linker.client.config; -using linker.config; -using linker.plugins.tunnel.messenger; -using linker.server; -using linker.tunnel.adapter; -using linker.tunnel.transport; -using linker.libs; +using Linker.Client; +using Linker.Client.Config; +using Linker.Config; +using Linker.Plugins.Tunnel.Messenger; +using Linker.Server; +using Linker.Tunnel.Adapter; +using Linker.Tunnel.Transport; +using Linker.Libs; using MemoryPack; using System.Net; using System.Security.Cryptography.X509Certificates; -using linker.tunnel.wanport; +using Linker.Tunnel.WanPort; -namespace linker.plugins.tunnel +namespace Linker.Plugins.Tunnel { public sealed class TunnelAdapter : ITunnelAdapter { @@ -21,10 +21,10 @@ namespace linker.plugins.tunnel private readonly ClientSignInState clientSignInState; private readonly MessengerSender messengerSender; - private readonly Config config; + private readonly ConfigWrap config; private readonly RunningConfig running; - public TunnelAdapter(ClientSignInState clientSignInState, MessengerSender messengerSender, Config config, RunningConfig running) + public TunnelAdapter(ClientSignInState clientSignInState, MessengerSender messengerSender, ConfigWrap config, RunningConfig running) { this.clientSignInState = clientSignInState; this.messengerSender = messengerSender; diff --git a/linker/plugins/tunnel/TunnelApiController.cs b/linker/plugins/tunnel/TunnelApiController.cs index a280c2dc..e8c23d5e 100644 --- a/linker/plugins/tunnel/TunnelApiController.cs +++ b/linker/plugins/tunnel/TunnelApiController.cs @@ -1,31 +1,31 @@ -using linker.client; -using linker.client.capi; -using linker.config; -using linker.plugins.tunnel.messenger; -using linker.server; -using linker.tunnel.adapter; -using linker.tunnel.transport; -using linker.libs.api; -using linker.libs.extends; +using Linker.Client; +using Linker.Client.Capi; +using Linker.Config; +using Linker.Plugins.Tunnel.Messenger; +using Linker.Server; +using Linker.Tunnel.Adapter; +using Linker.Tunnel.Transport; +using Linker.Libs.Api; +using Linker.Libs.Extends; using MemoryPack; using System.Collections.Concurrent; -using linker.tunnel.wanport; +using Linker.Tunnel.WanPort; -namespace linker.plugins.tunnel +namespace Linker.Plugins.Tunnel { /// /// 管理接口 /// public sealed class TunnelApiController : IApiClientController { - private readonly Config config; + private readonly ConfigWrap config; private readonly TunnelWanPortTransfer compactTransfer; private readonly ClientSignInState clientSignInState; private readonly MessengerSender messengerSender; private readonly TunnelConfigTransfer tunnelConfigTransfer; private readonly ITunnelAdapter tunnelMessengerAdapter; - public TunnelApiController(Config config, TunnelWanPortTransfer compactTransfer, ClientSignInState clientSignInState, MessengerSender messengerSender, TunnelConfigTransfer tunnelConfigTransfer, ITunnelAdapter tunnelMessengerAdapter) + public TunnelApiController(ConfigWrap config, TunnelWanPortTransfer compactTransfer, ClientSignInState clientSignInState, MessengerSender messengerSender, TunnelConfigTransfer tunnelConfigTransfer, ITunnelAdapter tunnelMessengerAdapter) { this.config = config; this.compactTransfer = compactTransfer; diff --git a/linker/plugins/tunnel/TunnelConfigTransfer.cs b/linker/plugins/tunnel/TunnelConfigTransfer.cs index ff1376b1..67ced267 100644 --- a/linker/plugins/tunnel/TunnelConfigTransfer.cs +++ b/linker/plugins/tunnel/TunnelConfigTransfer.cs @@ -1,17 +1,17 @@ -using linker.client; -using linker.client.config; -using linker.config; -using linker.plugins.tunnel.messenger; -using linker.server; -using linker.tunnel.wanport; +using Linker.Client; +using Linker.Client.Config; +using Linker.Config; +using Linker.Plugins.Tunnel.Messenger; +using Linker.Server; +using Linker.Tunnel.WanPort; using MemoryPack; using System.Collections.Concurrent; -namespace linker.plugins.tunnel +namespace Linker.Plugins.Tunnel { public sealed class TunnelConfigTransfer { - private readonly Config config; + private readonly ConfigWrap config; private readonly RunningConfig running; private readonly ClientSignInState clientSignInState; private readonly MessengerSender messengerSender; @@ -21,7 +21,7 @@ namespace linker.plugins.tunnel private ConcurrentDictionary configs = new ConcurrentDictionary(); public ConcurrentDictionary Config => configs; - public TunnelConfigTransfer(Config config, RunningConfig running, ClientSignInState clientSignInState, MessengerSender messengerSender, TunnelWanPortTransfer compactTransfer) + public TunnelConfigTransfer(ConfigWrap config, RunningConfig running, ClientSignInState clientSignInState, MessengerSender messengerSender, TunnelWanPortTransfer compactTransfer) { this.config = config; this.running = running; diff --git a/linker/plugins/tunnel/TunnelStartup.cs b/linker/plugins/tunnel/TunnelStartup.cs index d489c10e..e9691973 100644 --- a/linker/plugins/tunnel/TunnelStartup.cs +++ b/linker/plugins/tunnel/TunnelStartup.cs @@ -1,17 +1,17 @@ -using linker.config; -using linker.plugins.tunnel.messenger; -using linker.startup; -using linker.tunnel; -using linker.tunnel.adapter; -using linker.tunnel.transport; -using linker.libs; +using Linker.Config; +using Linker.Plugins.Tunnel.Messenger; +using Linker.Startup; +using Linker.Tunnel; +using Linker.Tunnel.Adapter; +using Linker.Tunnel.Transport; +using Linker.Libs; using MemoryPack; using Microsoft.Extensions.DependencyInjection; using System.Net; using System.Reflection; -using linker.tunnel.wanport; +using Linker.Tunnel.WanPort; -namespace linker.plugins.tunnel +namespace Linker.Plugins.Tunnel { /// /// 打洞插件 @@ -27,7 +27,7 @@ namespace linker.plugins.tunnel public StartupLoadType LoadType => StartupLoadType.Normal; - public void AddClient(ServiceCollection serviceCollection, Config config, Assembly[] assemblies) + public void AddClient(ServiceCollection serviceCollection, ConfigWrap config, Assembly[] assemblies) { //序列化扩展 MemoryPackFormatterProvider.Register(new TunnelWanPortInfoFormatter()); @@ -54,16 +54,16 @@ namespace linker.plugins.tunnel serviceCollection.AddSingleton(); serviceCollection.AddSingleton(); - Logger.Instance.Info($"tunnel route level getting."); + LoggerHelper.Instance.Info($"tunnel route level getting."); config.Data.Client.Tunnel.RouteLevel = NetworkHelper.GetRouteLevel(out List ips); - Logger.Instance.Warning($"route ips:{string.Join(",", ips.Select(c => c.ToString()))}"); + LoggerHelper.Instance.Warning($"route ips:{string.Join(",", ips.Select(c => c.ToString()))}"); config.Data.Client.Tunnel.LocalIPs = NetworkHelper.GetIPV6().Concat(NetworkHelper.GetIPV4()).ToArray(); - Logger.Instance.Info($"tunnel local ips :{string.Join(",", config.Data.Client.Tunnel.LocalIPs.Select(c => c.ToString()))}"); - Logger.Instance.Info($"tunnel route level:{config.Data.Client.Tunnel.RouteLevel}"); + LoggerHelper.Instance.Info($"tunnel local ips :{string.Join(",", config.Data.Client.Tunnel.LocalIPs.Select(c => c.ToString()))}"); + LoggerHelper.Instance.Info($"tunnel route level:{config.Data.Client.Tunnel.RouteLevel}"); } - public void AddServer(ServiceCollection serviceCollection, Config config, Assembly[] assemblies) + public void AddServer(ServiceCollection serviceCollection, ConfigWrap config, Assembly[] assemblies) { MemoryPackFormatterProvider.Register(new TunnelWanPortInfoFormatter()); MemoryPackFormatterProvider.Register(new TunnelTransportWanPortInfoFormatter()); @@ -73,7 +73,7 @@ namespace linker.plugins.tunnel serviceCollection.AddSingleton(); } - public void UseClient(ServiceProvider serviceProvider, Config config, Assembly[] assemblies) + public void UseClient(ServiceProvider serviceProvider, ConfigWrap config, Assembly[] assemblies) { ITunnelAdapter tunnelAdapter = serviceProvider.GetService(); @@ -91,7 +91,7 @@ namespace linker.plugins.tunnel TunnelConfigTransfer tunnelConfigTransfer = serviceProvider.GetService(); } - public void UseServer(ServiceProvider serviceProvider, Config config, Assembly[] assemblies) + public void UseServer(ServiceProvider serviceProvider, ConfigWrap config, Assembly[] assemblies) { } diff --git a/linker/plugins/tunnel/config/Config.cs b/linker/plugins/tunnel/config/Config.cs index 0e299074..51477ced 100644 --- a/linker/plugins/tunnel/config/Config.cs +++ b/linker/plugins/tunnel/config/Config.cs @@ -1,14 +1,14 @@ -using linker.tunnel.connection; -using linker.tunnel.wanport; -using linker.tunnel.transport; -using linker.tunnel.wanport; +using Linker.Tunnel.Connection; +using Linker.Tunnel.WanPort; +using Linker.Tunnel.Transport; +using Linker.Tunnel.WanPort; using LiteDB; using MemoryPack; using System.Net; using System.Text.Json.Serialization; -namespace linker.client.config +namespace Linker.Client.Config { public sealed partial class RunningConfigInfo { @@ -25,7 +25,7 @@ namespace linker.client.config } } -namespace linker.config +namespace Linker.Config { public partial class ConfigClientInfo { diff --git a/linker/plugins/tunnel/messenger/TunnelMessenger.cs b/linker/plugins/tunnel/messenger/TunnelMessenger.cs index 16d54dab..b9329173 100644 --- a/linker/plugins/tunnel/messenger/TunnelMessenger.cs +++ b/linker/plugins/tunnel/messenger/TunnelMessenger.cs @@ -1,14 +1,14 @@ -using linker.config; -using linker.plugins.signin.messenger; -using linker.server; -using linker.tunnel; -using linker.tunnel.adapter; -using linker.tunnel.transport; -using linker.libs; +using Linker.Config; +using Linker.Plugins.Signin.Messenger; +using Linker.Server; +using Linker.Tunnel; +using Linker.Tunnel.Adapter; +using Linker.Tunnel.Transport; +using Linker.Libs; using MemoryPack; -using linker.tunnel.wanport; +using Linker.Tunnel.WanPort; -namespace linker.plugins.tunnel.messenger +namespace Linker.Plugins.Tunnel.Messenger { public sealed class TunnelClientMessenger : IMessenger { diff --git a/linker/plugins/tunnel/messenger/TunnelMessengerIds.cs b/linker/plugins/tunnel/messenger/TunnelMessengerIds.cs index 5ef5c27b..06faf470 100644 --- a/linker/plugins/tunnel/messenger/TunnelMessengerIds.cs +++ b/linker/plugins/tunnel/messenger/TunnelMessengerIds.cs @@ -1,4 +1,4 @@ -namespace linker.plugins.tunnel.messenger +namespace Linker.Plugins.Tunnel.Messenger { public enum TunnelMessengerIds : ushort { diff --git a/linker/plugins/tuntap/TuntapApiController.cs b/linker/plugins/tuntap/TuntapApiController.cs index 96e050b1..7bdc7785 100644 --- a/linker/plugins/tuntap/TuntapApiController.cs +++ b/linker/plugins/tuntap/TuntapApiController.cs @@ -1,24 +1,24 @@ -using linker.server; -using linker.libs.api; -using linker.plugins.tuntap.vea; -using linker.client; -using linker.plugins.tuntap.messenger; +using Linker.Server; +using Linker.Libs.Api; +using Linker.Plugins.Tuntap.Vea; +using Linker.Client; +using Linker.Plugins.Tuntap.Messenger; using MemoryPack; -using linker.config; -using linker.libs.extends; -using linker.client.capi; +using Linker.Libs.Extends; +using Linker.Client.Capi; using System.Collections.Concurrent; +using Linker.Config; -namespace linker.plugins.tuntap +namespace Linker.Plugins.Tuntap { public sealed class TuntapClientApiController : IApiClientController { private readonly MessengerSender messengerSender; private readonly TuntapTransfer tuntapTransfer; private readonly ClientSignInState clientSignInState; - private readonly Config config; + private readonly ConfigWrap config; - public TuntapClientApiController(MessengerSender messengerSender, TuntapTransfer tuntapTransfer, ClientSignInState clientSignInState, Config config) + public TuntapClientApiController(MessengerSender messengerSender, TuntapTransfer tuntapTransfer, ClientSignInState clientSignInState, ConfigWrap config) { this.messengerSender = messengerSender; this.tuntapTransfer = tuntapTransfer; diff --git a/linker/plugins/tuntap/TuntapStartup.cs b/linker/plugins/tuntap/TuntapStartup.cs index cf480b15..9a308025 100644 --- a/linker/plugins/tuntap/TuntapStartup.cs +++ b/linker/plugins/tuntap/TuntapStartup.cs @@ -1,12 +1,12 @@ -using linker.config; -using linker.plugins.tuntap.messenger; -using linker.plugins.tuntap.proxy; -using linker.plugins.tuntap.vea; -using linker.startup; +using Linker.Config; +using Linker.Plugins.Tuntap.Messenger; +using Linker.Plugins.Tuntap.Proxy; +using Linker.Plugins.Tuntap.Vea; +using Linker.Startup; using Microsoft.Extensions.DependencyInjection; using System.Reflection; -namespace linker.plugins.tuntap +namespace Linker.Plugins.Tuntap { /// /// 虚拟网卡组网插件 @@ -21,7 +21,7 @@ namespace linker.plugins.tuntap public StartupLoadType LoadType => StartupLoadType.Normal; - public void AddClient(ServiceCollection serviceCollection, Config config, Assembly[] assemblies) + public void AddClient(ServiceCollection serviceCollection, ConfigWrap config, Assembly[] assemblies) { //不同平台下的虚拟网卡 if (OperatingSystem.IsWindows()) serviceCollection.AddSingleton(); @@ -35,18 +35,18 @@ namespace linker.plugins.tuntap serviceCollection.AddSingleton(); } - public void AddServer(ServiceCollection serviceCollection, Config config, Assembly[] assemblies) + public void AddServer(ServiceCollection serviceCollection, ConfigWrap config, Assembly[] assemblies) { serviceCollection.AddSingleton(); } - public void UseClient(ServiceProvider serviceProvider, Config config, Assembly[] assemblies) + public void UseClient(ServiceProvider serviceProvider, ConfigWrap config, Assembly[] assemblies) { TuntapProxy tuntapProxy = serviceProvider.GetService(); TuntapTransfer tuntapTransfer = serviceProvider.GetService(); } - public void UseServer(ServiceProvider serviceProvider, Config config, Assembly[] assemblies) + public void UseServer(ServiceProvider serviceProvider, ConfigWrap config, Assembly[] assemblies) { } } diff --git a/linker/plugins/tuntap/TuntapTransfer.cs b/linker/plugins/tuntap/TuntapTransfer.cs index f34dd513..e2adc68e 100644 --- a/linker/plugins/tuntap/TuntapTransfer.cs +++ b/linker/plugins/tuntap/TuntapTransfer.cs @@ -1,25 +1,25 @@ -using linker.client; -using linker.client.config; -using linker.config; -using linker.plugins.tuntap.messenger; -using linker.plugins.tuntap.proxy; -using linker.plugins.tuntap.vea; -using linker.server; -using linker.libs; +using Linker.Client; +using Linker.Client.Config; +using Linker.Config; +using Linker.Plugins.Tuntap.Messenger; +using Linker.Plugins.Tuntap.Proxy; +using Linker.Plugins.Tuntap.Vea; +using Linker.Server; +using Linker.Libs; using MemoryPack; using System.Buffers.Binary; using System.Collections.Concurrent; using System.Net; using System.Net.NetworkInformation; -namespace linker.plugins.tuntap +namespace Linker.Plugins.Tuntap { public sealed class TuntapTransfer { private readonly MessengerSender messengerSender; private readonly ClientSignInState clientSignInState; private readonly ITuntapVea tuntapVea; - private readonly Config config; + private readonly ConfigWrap config; private readonly TuntapProxy tuntapProxy; private readonly RunningConfig runningConfig; @@ -32,7 +32,7 @@ namespace linker.plugins.tuntap private bool starting = false; public TuntapStatus Status => tuntapVea.Running ? TuntapStatus.Running : (starting ? TuntapStatus.Starting : TuntapStatus.Normal); - public TuntapTransfer(MessengerSender messengerSender, ClientSignInState clientSignInState, ITuntapVea tuntapVea, Config config, TuntapProxy tuntapProxy, RunningConfig runningConfig) + public TuntapTransfer(MessengerSender messengerSender, ClientSignInState clientSignInState, ITuntapVea tuntapVea, ConfigWrap config, TuntapProxy tuntapProxy, RunningConfig runningConfig) { this.messengerSender = messengerSender; this.clientSignInState = clientSignInState; @@ -89,7 +89,7 @@ namespace linker.plugins.tuntap } catch (Exception ex) { - Logger.Instance.Error(ex); + LoggerHelper.Instance.Error(ex); } finally { @@ -116,9 +116,9 @@ namespace linker.plugins.tuntap } catch (Exception ex) { - if (Logger.Instance.LoggerLevel <= LoggerTypes.DEBUG) + if (LoggerHelper.Instance.LoggerLevel <= LoggerTypes.DEBUG) { - Logger.Instance.Error(ex); + LoggerHelper.Instance.Error(ex); } } finally diff --git a/linker/plugins/tuntap/config/config.cs b/linker/plugins/tuntap/config/config.cs index 61b87972..5a382858 100644 --- a/linker/plugins/tuntap/config/config.cs +++ b/linker/plugins/tuntap/config/config.cs @@ -1,8 +1,8 @@ -using linker.plugins.tuntap.config; +using Linker.Plugins.Tuntap.Config; using System.Buffers.Binary; using System.Net; -namespace linker.plugins.tuntap.config +namespace Linker.Plugins.Tuntap.Config { public sealed class TuntapConfigInfo { @@ -30,7 +30,7 @@ namespace linker.plugins.tuntap.config } -namespace linker.client.config +namespace Linker.Client.Config { public sealed partial class RunningConfigInfo { diff --git a/linker/plugins/tuntap/messenger/TuntapMessenger.cs b/linker/plugins/tuntap/messenger/TuntapMessenger.cs index 6cd623a2..479202c3 100644 --- a/linker/plugins/tuntap/messenger/TuntapMessenger.cs +++ b/linker/plugins/tuntap/messenger/TuntapMessenger.cs @@ -1,9 +1,9 @@ -using linker.plugins.signin.messenger; -using linker.plugins.tuntap.vea; -using linker.server; +using Linker.Plugins.Signin.Messenger; +using Linker.Plugins.Tuntap.Vea; +using Linker.Server; using MemoryPack; -namespace linker.plugins.tuntap.messenger +namespace Linker.Plugins.Tuntap.Messenger { public sealed class TuntapClientMessenger : IMessenger { diff --git a/linker/plugins/tuntap/messenger/TuntapMessengerIds.cs b/linker/plugins/tuntap/messenger/TuntapMessengerIds.cs index 0f73ce74..40fe4afb 100644 --- a/linker/plugins/tuntap/messenger/TuntapMessengerIds.cs +++ b/linker/plugins/tuntap/messenger/TuntapMessengerIds.cs @@ -1,4 +1,4 @@ -namespace linker.plugins.tuntap.messenger +namespace Linker.Plugins.Tuntap.Messenger { public enum TuntapMessengerIds : ushort { diff --git a/linker/plugins/tuntap/proxy/TuntapProxy.cs b/linker/plugins/tuntap/proxy/TuntapProxy.cs index d4218e56..1ec62555 100644 --- a/linker/plugins/tuntap/proxy/TuntapProxy.cs +++ b/linker/plugins/tuntap/proxy/TuntapProxy.cs @@ -1,26 +1,26 @@ -using linker.client.config; -using linker.config; -using linker.plugins.relay; -using linker.plugins.tuntap.vea; -using linker.tunnel; -using linker.tunnel.connection; -using linker.tunnel.proxy; -using linker.libs; -using linker.libs.extends; -using linker.libs.socks5; +using Linker.Client.Config; +using Linker.Config; +using Linker.Plugins.Relay; +using Linker.Plugins.Tuntap.Vea; +using Linker.Tunnel; +using Linker.Tunnel.Connection; +using Linker.Tunnel.Proxy; +using Linker.Libs; +using Linker.Libs.Extends; +using Linker.Libs.Socks5; using System.Buffers.Binary; using System.Collections.Concurrent; using System.Net; using System.Net.Sockets; -namespace linker.plugins.tuntap.proxy +namespace Linker.Plugins.Tuntap.Proxy { public sealed class TuntapProxy : TunnelProxy { private readonly TunnelTransfer tunnelTransfer; private readonly RelayTransfer relayTransfer; private readonly RunningConfig runningConfig; - private readonly Config config; + private readonly ConfigWrap config; private IPEndPoint proxyEP; public override IPAddress UdpBindAdress { get; set; } @@ -30,7 +30,7 @@ namespace linker.plugins.tuntap.proxy private readonly ConcurrentDictionary dicConnections = new ConcurrentDictionary(); private readonly ConcurrentDictionary dicLocks = new ConcurrentDictionary(); - public TuntapProxy(TunnelTransfer tunnelTransfer, RelayTransfer relayTransfer, RunningConfig runningConfig, Config config) + public TuntapProxy(TunnelTransfer tunnelTransfer, RelayTransfer relayTransfer, RunningConfig runningConfig, ConfigWrap config) { this.tunnelTransfer = tunnelTransfer; this.relayTransfer = relayTransfer; @@ -39,7 +39,7 @@ namespace linker.plugins.tuntap.proxy Start(new IPEndPoint(IPAddress.Any,0)); proxyEP = new IPEndPoint(IPAddress.Any, LocalEndpoint.Port); - Logger.Instance.Info($"start tuntap proxy, listen port : {LocalEndpoint}"); + LoggerHelper.Instance.Info($"start tuntap proxy, listen port : {LocalEndpoint}"); //监听打洞连接成功 @@ -53,8 +53,8 @@ namespace linker.plugins.tuntap.proxy /// private void OnConnected(ITunnelConnection connection) { - if (Logger.Instance.LoggerLevel <= LoggerTypes.DEBUG) - Logger.Instance.Warning($"tuntap add connection {connection.GetHashCode()} {connection.ToJson()}"); + if (LoggerHelper.Instance.LoggerLevel <= LoggerTypes.DEBUG) + LoggerHelper.Instance.Warning($"tuntap add connection {connection.GetHashCode()} {connection.ToJson()}"); dicConnections.AddOrUpdate(connection.RemoteMachineId, connection, (a, b) => connection); BindConnectionReceive(connection); } @@ -195,9 +195,9 @@ namespace linker.plugins.tuntap.proxy } catch (Exception ex) { - if (Logger.Instance.LoggerLevel <= LoggerTypes.DEBUG) + if (LoggerHelper.Instance.LoggerLevel <= LoggerTypes.DEBUG) { - Logger.Instance.Error(ex); + LoggerHelper.Instance.Error(ex); } } finally @@ -258,21 +258,21 @@ namespace linker.plugins.tuntap.proxy return connection; } - if (Logger.Instance.LoggerLevel <= LoggerTypes.DEBUG) Logger.Instance.Debug($"tuntap tunnel to {machineId}"); + if (LoggerHelper.Instance.LoggerLevel <= LoggerTypes.DEBUG) LoggerHelper.Instance.Debug($"tuntap tunnel to {machineId}"); connection = await tunnelTransfer.ConnectAsync(machineId, "tuntap"); if (connection != null) { - if (Logger.Instance.LoggerLevel <= LoggerTypes.DEBUG) Logger.Instance.Debug($"tuntap tunnel success,{connection.ToString()}"); + if (LoggerHelper.Instance.LoggerLevel <= LoggerTypes.DEBUG) LoggerHelper.Instance.Debug($"tuntap tunnel success,{connection.ToString()}"); } if (connection == null) { - if (Logger.Instance.LoggerLevel <= LoggerTypes.DEBUG) Logger.Instance.Debug($"tuntap relay to {machineId}"); + if (LoggerHelper.Instance.LoggerLevel <= LoggerTypes.DEBUG) LoggerHelper.Instance.Debug($"tuntap relay to {machineId}"); connection = await relayTransfer.ConnectAsync(config.Data.Client.Id, machineId, "tuntap"); if (connection != null) { - if (Logger.Instance.LoggerLevel <= LoggerTypes.DEBUG) Logger.Instance.Debug($"tuntap relay success,{connection.ToString()}"); + if (LoggerHelper.Instance.LoggerLevel <= LoggerTypes.DEBUG) LoggerHelper.Instance.Debug($"tuntap relay success,{connection.ToString()}"); } } if (connection != null) diff --git a/linker/plugins/tuntap/vea/ITuntapVea.cs b/linker/plugins/tuntap/vea/ITuntapVea.cs index f8cce558..e4d259a7 100644 --- a/linker/plugins/tuntap/vea/ITuntapVea.cs +++ b/linker/plugins/tuntap/vea/ITuntapVea.cs @@ -3,7 +3,7 @@ using System.Net; using System.Net.NetworkInformation; using System.Text.Json.Serialization; -namespace linker.plugins.tuntap.vea +namespace Linker.Plugins.Tuntap.Vea { public interface ITuntapVea { diff --git a/linker/plugins/tuntap/vea/TuntapVeaLinux.cs b/linker/plugins/tuntap/vea/TuntapVeaLinux.cs index d675e48c..26816a2b 100644 --- a/linker/plugins/tuntap/vea/TuntapVeaLinux.cs +++ b/linker/plugins/tuntap/vea/TuntapVeaLinux.cs @@ -1,10 +1,10 @@ -using linker.libs; -using linker.libs.extends; +using Linker.Libs; +using Linker.Libs.Extends; using System.Buffers.Binary; using System.Diagnostics; using System.Net; -namespace linker.plugins.tuntap.vea +namespace Linker.Plugins.Tuntap.Vea { public sealed class TuntapVeaLinux : ITuntapVea { @@ -13,7 +13,7 @@ namespace linker.plugins.tuntap.vea private IPAddress ip; public bool Running => string.IsNullOrWhiteSpace(interfaceLinux) == false; - public string InterfaceName => "linker"; + public string InterfaceName => "Linker"; public TuntapVeaLinux() { @@ -27,7 +27,7 @@ namespace linker.plugins.tuntap.vea if (str.Contains(InterfaceName) == false) { string msg = CommandHelper.Linux(string.Empty, new string[] { $"ip tuntap add mode tun dev {InterfaceName}" }); - Logger.Instance.Error(msg); + LoggerHelper.Instance.Error(msg); return false; } @@ -35,16 +35,16 @@ namespace linker.plugins.tuntap.vea try { string command = $" -device {InterfaceName} -proxy socks5://127.0.0.1:{proxyPort} -interface {interfaceLinux} -loglevel silent"; - if (Logger.Instance.LoggerLevel <= LoggerTypes.DEBUG) + if (LoggerHelper.Instance.LoggerLevel <= LoggerTypes.DEBUG) { - Logger.Instance.Warning($"vea linux ->exec:{command}"); + LoggerHelper.Instance.Warning($"vea linux ->exec:{command}"); } Tun2SocksProcess = CommandHelper.Execute("./plugins/tuntap/tun2socks", command); await Task.Delay(10); } catch (Exception ex) { - Logger.Instance.Error(ex.Message); + LoggerHelper.Instance.Error(ex.Message); return false; } @@ -85,9 +85,9 @@ namespace linker.plugins.tuntap.vea }).ToArray(); if (commands.Length > 0) { - if (Logger.Instance.LoggerLevel <= LoggerTypes.DEBUG) + if (LoggerHelper.Instance.LoggerLevel <= LoggerTypes.DEBUG) { - Logger.Instance.Warning($"vea linux ->add route:{string.Join(Environment.NewLine, commands)}"); + LoggerHelper.Instance.Warning($"vea linux ->add route:{string.Join(Environment.NewLine, commands)}"); } CommandHelper.Linux(string.Empty, commands); } @@ -99,9 +99,9 @@ namespace linker.plugins.tuntap.vea return $"ip route del {string.Join(".", BinaryPrimitives.ReverseEndianness(item.IPAddress).ToBytes())}/{item.MaskLength}"; }).ToArray(); - if (Logger.Instance.LoggerLevel <= LoggerTypes.DEBUG) + if (LoggerHelper.Instance.LoggerLevel <= LoggerTypes.DEBUG) { - Logger.Instance.Warning($"vea linux ->del route:{string.Join(Environment.NewLine, commands)}"); + LoggerHelper.Instance.Warning($"vea linux ->del route:{string.Join(Environment.NewLine, commands)}"); } CommandHelper.Linux(string.Empty, commands); } diff --git a/linker/plugins/tuntap/vea/TuntapVeaMacOs.cs b/linker/plugins/tuntap/vea/TuntapVeaMacOs.cs index ffe42ff8..eb330a63 100644 --- a/linker/plugins/tuntap/vea/TuntapVeaMacOs.cs +++ b/linker/plugins/tuntap/vea/TuntapVeaMacOs.cs @@ -1,10 +1,10 @@ -using linker.libs; -using linker.libs.extends; +using Linker.Libs; +using Linker.Libs.Extends; using System.Buffers.Binary; using System.Diagnostics; using System.Net; -namespace linker.plugins.tuntap.vea +namespace Linker.Plugins.Tuntap.Vea { public sealed class TuntapVeaMacOs : ITuntapVea { @@ -28,7 +28,7 @@ namespace linker.plugins.tuntap.vea } catch (Exception ex) { - Logger.Instance.Error(ex.Message); + LoggerHelper.Instance.Error(ex.Message); return false; } diff --git a/linker/plugins/tuntap/vea/TuntapVeaWindows.cs b/linker/plugins/tuntap/vea/TuntapVeaWindows.cs index 19967af9..c7ebcfb8 100644 --- a/linker/plugins/tuntap/vea/TuntapVeaWindows.cs +++ b/linker/plugins/tuntap/vea/TuntapVeaWindows.cs @@ -1,10 +1,10 @@ -using linker.libs; -using linker.libs.extends; +using Linker.Libs; +using Linker.Libs.Extends; using System.Buffers.Binary; using System.Diagnostics; using System.Net; -namespace linker.plugins.tuntap.vea +namespace Linker.Plugins.Tuntap.Vea { public sealed class TuntapVeaWindows : ITuntapVea { @@ -12,7 +12,7 @@ namespace linker.plugins.tuntap.vea private Process Tun2SocksProcess; public bool Running => interfaceNumber > 0; - public string InterfaceName => "linker"; + public string InterfaceName => "Linker"; public TuntapVeaWindows() { @@ -21,9 +21,9 @@ namespace linker.plugins.tuntap.vea public async Task Run(int proxyPort, IPAddress ip) { string command = $" -device {InterfaceName} -proxy socks5://127.0.0.1:{proxyPort} -loglevel silent"; - if (Logger.Instance.LoggerLevel <= LoggerTypes.DEBUG) + if (LoggerHelper.Instance.LoggerLevel <= LoggerTypes.DEBUG) { - Logger.Instance.Warning($"vea windows ->exec:{command}"); + LoggerHelper.Instance.Warning($"vea windows ->exec:{command}"); } try { @@ -37,18 +37,18 @@ namespace linker.plugins.tuntap.vea } if (GetWindowsHasInterface(InterfaceName) == false) { - if (Logger.Instance.LoggerLevel <= LoggerTypes.DEBUG) + if (LoggerHelper.Instance.LoggerLevel <= LoggerTypes.DEBUG) { - Logger.Instance.Warning($"vea windows ->interface not dound"); + LoggerHelper.Instance.Warning($"vea windows ->interface not dound"); } continue; } interfaceNumber = GetWindowsInterfaceNum(); if (interfaceNumber == 0) { - if (Logger.Instance.LoggerLevel <= LoggerTypes.DEBUG) + if (LoggerHelper.Instance.LoggerLevel <= LoggerTypes.DEBUG) { - Logger.Instance.Warning($"vea windows ->interface num not dound"); + LoggerHelper.Instance.Warning($"vea windows ->interface num not dound"); } continue; } @@ -58,13 +58,13 @@ namespace linker.plugins.tuntap.vea } catch (Exception ex) { - Logger.Instance.Error(ex); + LoggerHelper.Instance.Error(ex); } if (interfaceNumber <= 0) { string msg = CommandHelper.Execute("./plugins/tuntap/tun2socks.exe", command, Array.Empty()); - Logger.Instance.Error(msg); + LoggerHelper.Instance.Error(msg); } return interfaceNumber > 0; @@ -80,9 +80,9 @@ namespace linker.plugins.tuntap.vea { return true; } - if (Logger.Instance.LoggerLevel <= LoggerTypes.DEBUG) + if (LoggerHelper.Instance.LoggerLevel <= LoggerTypes.DEBUG) { - Logger.Instance.Error($"vea windows ->set ip fail"); + LoggerHelper.Instance.Error($"vea windows ->set ip fail"); } await Task.Delay(500); } @@ -128,9 +128,9 @@ namespace linker.plugins.tuntap.vea }).ToArray(); if (commands.Length > 0) { - if (Logger.Instance.LoggerLevel <= LoggerTypes.DEBUG) + if (LoggerHelper.Instance.LoggerLevel <= LoggerTypes.DEBUG) { - Logger.Instance.Warning($"vea windows ->add route:{string.Join(Environment.NewLine, commands)}"); + LoggerHelper.Instance.Warning($"vea windows ->add route:{string.Join(Environment.NewLine, commands)}"); } CommandHelper.Windows(string.Empty, commands); } @@ -143,9 +143,9 @@ namespace linker.plugins.tuntap.vea string[] commands = ip.Where(c => c.IPAddress > 0).Select(item => $"route delete {string.Join(".", BinaryPrimitives.ReverseEndianness(item.IPAddress).ToBytes())}").ToArray(); if (commands.Length > 0) { - if (Logger.Instance.LoggerLevel <= LoggerTypes.DEBUG) + if (LoggerHelper.Instance.LoggerLevel <= LoggerTypes.DEBUG) { - Logger.Instance.Warning($"vea windows ->del route:{string.Join(Environment.NewLine, commands)}"); + LoggerHelper.Instance.Warning($"vea windows ->del route:{string.Join(Environment.NewLine, commands)}"); } CommandHelper.Windows(string.Empty, commands.ToArray()); } diff --git a/linker/serializes/IPAddressFormatter.cs b/linker/serializes/IPAddressFormatter.cs index e8289b40..753799c4 100644 --- a/linker/serializes/IPAddressFormatter.cs +++ b/linker/serializes/IPAddressFormatter.cs @@ -1,7 +1,7 @@ using MemoryPack; using System.Net; -namespace linker.serializes +namespace Linker.Serializes { /// /// MemoryPack 的 IPAddress序列化扩展 diff --git a/linker/serializes/IPEndPointFormatter.cs b/linker/serializes/IPEndPointFormatter.cs index 30650ec9..53caddfb 100644 --- a/linker/serializes/IPEndPointFormatter.cs +++ b/linker/serializes/IPEndPointFormatter.cs @@ -1,8 +1,8 @@ -using linker.libs.extends; +using Linker.Libs.Extends; using MemoryPack; using System.Net; -namespace linker.serializes +namespace Linker.Serializes { /// /// MemoryPack 的 IPEndPoint序列化扩展 diff --git a/linker/serializes/SerializeStartup.cs b/linker/serializes/SerializeStartup.cs index caf36373..73ec3bfc 100644 --- a/linker/serializes/SerializeStartup.cs +++ b/linker/serializes/SerializeStartup.cs @@ -1,10 +1,10 @@ -using linker.config; -using linker.startup; +using Linker.Config; +using Linker.Startup; using MemoryPack; using Microsoft.Extensions.DependencyInjection; using System.Reflection; -namespace linker.serializes +namespace Linker.Serializes { /// /// MemoryPack 序列化扩展加载插件 @@ -17,24 +17,24 @@ namespace linker.serializes public string[] Dependent => Array.Empty(); public StartupLoadType LoadType => StartupLoadType.Normal; - public void AddClient(ServiceCollection serviceCollection, Config config, Assembly[] assemblies) + public void AddClient(ServiceCollection serviceCollection, ConfigWrap config, Assembly[] assemblies) { MemoryPackFormatterProvider.Register(new IPEndPointFormatter()); MemoryPackFormatterProvider.Register(new IPAddressFormatter()); } - public void AddServer(ServiceCollection serviceCollection, Config config, Assembly[] assemblies) + public void AddServer(ServiceCollection serviceCollection, ConfigWrap config, Assembly[] assemblies) { MemoryPackFormatterProvider.Register(new IPEndPointFormatter()); MemoryPackFormatterProvider.Register(new IPAddressFormatter()); } - public void UseClient(ServiceProvider serviceProvider, Config config, Assembly[] assemblies) + public void UseClient(ServiceProvider serviceProvider, ConfigWrap config, Assembly[] assemblies) { } - public void UseServer(ServiceProvider serviceProvider, Config config, Assembly[] assemblies) + public void UseServer(ServiceProvider serviceProvider, ConfigWrap config, Assembly[] assemblies) { } } diff --git a/linker/server/IConnection.cs b/linker/server/IConnection.cs index 302f8684..40214225 100644 --- a/linker/server/IConnection.cs +++ b/linker/server/IConnection.cs @@ -1,12 +1,12 @@ -using linker.libs; -using linker.libs.extends; +using Linker.Libs; +using Linker.Libs.Extends; using System.Buffers; using System.Net; using System.Net.Security; using System.Net.Sockets; using System.Text; -namespace linker.server +namespace Linker.Server { public interface IConnectionReceiveCallback { @@ -337,9 +337,9 @@ namespace linker.server } catch (Exception ex) { - if (Logger.Instance.LoggerLevel <= LoggerTypes.DEBUG) + if (LoggerHelper.Instance.LoggerLevel <= LoggerTypes.DEBUG) { - Logger.Instance.Error(ex); + LoggerHelper.Instance.Error(ex); } Disponse(2); } @@ -491,9 +491,9 @@ namespace linker.server } catch (Exception ex) { - if (Logger.Instance.LoggerLevel <= LoggerTypes.DEBUG) + if (LoggerHelper.Instance.LoggerLevel <= LoggerTypes.DEBUG) { - Logger.Instance.Error(ex); + LoggerHelper.Instance.Error(ex); } Disponse(3); } @@ -538,9 +538,9 @@ namespace linker.server } catch (Exception ex) { - if (Logger.Instance.LoggerLevel <= LoggerTypes.DEBUG) + if (LoggerHelper.Instance.LoggerLevel <= LoggerTypes.DEBUG) { - Logger.Instance.Error(ex); + LoggerHelper.Instance.Error(ex); } Disponse(4); } diff --git a/linker/server/IMessenger.cs b/linker/server/IMessenger.cs index a763cb78..c187ea34 100644 --- a/linker/server/IMessenger.cs +++ b/linker/server/IMessenger.cs @@ -1,4 +1,4 @@ -namespace linker.server +namespace Linker.Server { /// /// 消息接口 diff --git a/linker/server/MessengerResolver.cs b/linker/server/MessengerResolver.cs index 1e26b0de..11ce2c44 100644 --- a/linker/server/MessengerResolver.cs +++ b/linker/server/MessengerResolver.cs @@ -1,8 +1,8 @@ -using linker.libs; +using Linker.Libs; using Microsoft.Extensions.DependencyInjection; using System.Reflection; -namespace linker.server +namespace Linker.Server { /// /// 消息处理总线 @@ -40,7 +40,7 @@ namespace linker.server { continue; } - Logger.Instance.Warning($"load messenger:{type.Name}"); + LoggerHelper.Instance.Warning($"load messenger:{type.Name}"); foreach (var method in type.GetMethods(BindingFlags.Instance | BindingFlags.Public | BindingFlags.DeclaredOnly)) { @@ -68,7 +68,7 @@ namespace linker.server } else { - Logger.Instance.Error($"{type.Name}->{method.Name}->{mid.Id} 消息id已存在"); + LoggerHelper.Instance.Error($"{type.Name}->{method.Name}->{mid.Id} 消息id已存在"); } } } @@ -135,8 +135,8 @@ namespace linker.server } catch (Exception ex) { - if (Logger.Instance.LoggerLevel <= LoggerTypes.DEBUG) - Logger.Instance.Error(ex); + if (LoggerHelper.Instance.LoggerLevel <= LoggerTypes.DEBUG) + LoggerHelper.Instance.Error(ex); } finally { diff --git a/linker/server/MessengerSender.cs b/linker/server/MessengerSender.cs index 7b1d2f47..4aa2af04 100644 --- a/linker/server/MessengerSender.cs +++ b/linker/server/MessengerSender.cs @@ -1,7 +1,7 @@ -using linker.libs; +using Linker.Libs; using System.Collections.Concurrent; -namespace linker.server +namespace Linker.Server { /// /// 消息发送器 @@ -87,7 +87,7 @@ namespace linker.server } catch (Exception ex) { - Logger.Instance.Error(ex); + LoggerHelper.Instance.Error(ex); } return false; } @@ -113,8 +113,8 @@ namespace linker.server } catch (Exception ex) { - if (Logger.Instance.LoggerLevel <= LoggerTypes.DEBUG) - Logger.Instance.Error(ex); + if (LoggerHelper.Instance.LoggerLevel <= LoggerTypes.DEBUG) + LoggerHelper.Instance.Error(ex); } return false; } diff --git a/linker/server/ServerMessageWrap.cs b/linker/server/ServerMessageWrap.cs index fe80367c..abf76713 100644 --- a/linker/server/ServerMessageWrap.cs +++ b/linker/server/ServerMessageWrap.cs @@ -1,8 +1,8 @@ -using linker.libs.extends; +using Linker.Libs.Extends; using System.Buffers; using System.ComponentModel; -namespace linker.server +namespace Linker.Server { /// /// 请求数据包 diff --git a/linker/server/ServerStartup.cs b/linker/server/ServerStartup.cs index 5c1df68c..a8cbeba9 100644 --- a/linker/server/ServerStartup.cs +++ b/linker/server/ServerStartup.cs @@ -1,10 +1,10 @@ -using linker.config; -using linker.startup; -using linker.libs; +using Linker.Config; +using Linker.Startup; +using Linker.Libs; using Microsoft.Extensions.DependencyInjection; using System.Reflection; -namespace linker.server +namespace Linker.Server { /// /// 服务端插件 @@ -17,14 +17,14 @@ namespace linker.server public string[] Dependent => new string[] { "serialize", "firewall", "signin" }; public StartupLoadType LoadType => StartupLoadType.Normal; - public void AddClient(ServiceCollection serviceCollection, Config config, Assembly[] assemblies) + public void AddClient(ServiceCollection serviceCollection, ConfigWrap config, Assembly[] assemblies) { serviceCollection.AddSingleton(); serviceCollection.AddSingleton(); serviceCollection.AddSingleton(); } - public void AddServer(ServiceCollection serviceCollection, Config config, Assembly[] assemblies) + public void AddServer(ServiceCollection serviceCollection, ConfigWrap config, Assembly[] assemblies) { serviceCollection.AddSingleton(); serviceCollection.AddSingleton(); @@ -34,7 +34,7 @@ namespace linker.server private bool loaded = false; - public void UseClient(ServiceProvider serviceProvider, Config config, Assembly[] assemblies) + public void UseClient(ServiceProvider serviceProvider, ConfigWrap config, Assembly[] assemblies) { if (loaded == false) { @@ -44,7 +44,7 @@ namespace linker.server } } - public void UseServer(ServiceProvider serviceProvider, Config config, Assembly[] assemblies) + public void UseServer(ServiceProvider serviceProvider, ConfigWrap config, Assembly[] assemblies) { if (loaded == false) { @@ -53,7 +53,7 @@ namespace linker.server loaded = true; } - Logger.Instance.Info($"start server"); + LoggerHelper.Instance.Info($"start server"); try { //服务 @@ -63,9 +63,9 @@ namespace linker.server } catch (Exception ex) { - Logger.Instance.Error(ex); + LoggerHelper.Instance.Error(ex); } - Logger.Instance.Info($"server listen:{config.Data.Server.ServicePort}"); + LoggerHelper.Instance.Info($"server listen:{config.Data.Server.ServicePort}"); } } diff --git a/linker/server/TcpServer.cs b/linker/server/TcpServer.cs index 27519627..e0ce94d3 100644 --- a/linker/server/TcpServer.cs +++ b/linker/server/TcpServer.cs @@ -1,12 +1,12 @@ -using linker.libs; -using linker.libs.extends; +using Linker.Libs; +using Linker.Libs.Extends; using System.Net; using System.Net.Security; using System.Net.Sockets; using System.Security.Authentication; using System.Security.Cryptography.X509Certificates; -namespace linker.server +namespace Linker.Server { public sealed class TcpServer { @@ -31,7 +31,7 @@ namespace linker.server } else { - Logger.Instance.Error($"file {path} not found"); + LoggerHelper.Instance.Error($"file {path} not found"); Environment.Exit(0); } } @@ -160,8 +160,8 @@ namespace linker.server } catch (Exception ex) { - if (Logger.Instance.LoggerLevel <= LoggerTypes.DEBUG) - Logger.Instance.Error(ex); + if (LoggerHelper.Instance.LoggerLevel <= LoggerTypes.DEBUG) + LoggerHelper.Instance.Error(ex); } return null; } @@ -194,8 +194,8 @@ namespace linker.server } catch (Exception ex) { - if (Logger.Instance.LoggerLevel <= LoggerTypes.DEBUG) - Logger.Instance.Error(ex); + if (LoggerHelper.Instance.LoggerLevel <= LoggerTypes.DEBUG) + LoggerHelper.Instance.Error(ex); } return null; } diff --git a/linker/server/config/Config.cs b/linker/server/config/Config.cs index b0fe6bba..49296d05 100644 --- a/linker/server/config/Config.cs +++ b/linker/server/config/Config.cs @@ -1,7 +1,7 @@ -using linker.libs; -using linker.libs.extends; +using Linker.Libs; +using Linker.Libs.Extends; -namespace linker.config +namespace Linker.Config { public sealed partial class ConfigInfo { diff --git a/linker/startup/IStartup.cs b/linker/startup/IStartup.cs index 25157b98..1da062fb 100644 --- a/linker/startup/IStartup.cs +++ b/linker/startup/IStartup.cs @@ -1,8 +1,8 @@ -using linker.config; +using Linker.Config; using Microsoft.Extensions.DependencyInjection; using System.Reflection; -namespace linker.startup +namespace Linker.Startup { public interface IStartup { @@ -27,11 +27,11 @@ namespace linker.startup /// public StartupLoadType LoadType { get; } - public void AddClient(ServiceCollection serviceCollection, Config config, Assembly[] assemblies); - public void UseClient(ServiceProvider serviceProvider, Config config, Assembly[] assemblies); + public void AddClient(ServiceCollection serviceCollection, ConfigWrap config, Assembly[] assemblies); + public void UseClient(ServiceProvider serviceProvider, ConfigWrap config, Assembly[] assemblies); - public void AddServer(ServiceCollection serviceCollection, Config config, Assembly[] assemblies); - public void UseServer(ServiceProvider serviceProvider, Config config, Assembly[] assemblies); + public void AddServer(ServiceCollection serviceCollection, ConfigWrap config, Assembly[] assemblies); + public void UseServer(ServiceProvider serviceProvider, ConfigWrap config, Assembly[] assemblies); } public enum StartupLoadType diff --git a/linker/startup/StartupTransfer.cs b/linker/startup/StartupTransfer.cs index 774add4b..8feab56c 100644 --- a/linker/startup/StartupTransfer.cs +++ b/linker/startup/StartupTransfer.cs @@ -1,9 +1,9 @@ -using linker.config; -using linker.libs; +using Linker.Config; +using Linker.Libs; using Microsoft.Extensions.DependencyInjection; using System.Reflection; -namespace linker.startup +namespace Linker.Startup { public static class StartupTransfer { @@ -13,7 +13,7 @@ namespace linker.startup /// /// /// - public static void Init(Config config, Assembly[] assemblies) + public static void Init(ConfigWrap config, Assembly[] assemblies) { var types = ReflectionHelper.GetInterfaceSchieves(assemblies, typeof(IStartup)); List temps = types.Select(c => Activator.CreateInstance(c) as IStartup).OrderByDescending(c => c.Level).ToList(); @@ -32,7 +32,7 @@ namespace linker.startup IEnumerable excepts = item.Dependent.Except(names); if (excepts.Any()) { - Logger.Instance.Error($"【{item.Name}】dependent by {string.Join(",", excepts)},but it not exists"); + LoggerHelper.Instance.Error($"【{item.Name}】dependent by {string.Join(",", excepts)},but it not exists"); } } } @@ -41,7 +41,7 @@ namespace linker.startup /// /// /// - private static void LoadPlugins(Config config, List temps) + private static void LoadPlugins(ConfigWrap config, List temps) { //只要哪些 if (config.Data.Common.IncludePlugins.Length > 0) @@ -59,7 +59,7 @@ namespace linker.startup config.Data.Common.Plugins = startups.Select(c => c.Name).ToArray(); - Logger.Instance.Warning($"load startup : {string.Join(",", startups.Select(c => c.Name))}"); + LoggerHelper.Instance.Warning($"load startup : {string.Join(",", startups.Select(c => c.Name))}"); } /// /// 加载插件依赖 @@ -84,7 +84,7 @@ namespace linker.startup /// /// /// - public static void Add(ServiceCollection serviceCollection, Config config, Assembly[] assemblies) + public static void Add(ServiceCollection serviceCollection, ConfigWrap config, Assembly[] assemblies) { foreach (var startup in startups) { @@ -101,7 +101,7 @@ namespace linker.startup /// /// /// - public static void Use(ServiceProvider serviceProvider, Config config, Assembly[] assemblies) + public static void Use(ServiceProvider serviceProvider, ConfigWrap config, Assembly[] assemblies) { foreach (var startup in startups) { diff --git a/linker/store/StoreStartup.cs b/linker/store/StoreStartup.cs index 0b756b67..95795e50 100644 --- a/linker/store/StoreStartup.cs +++ b/linker/store/StoreStartup.cs @@ -1,9 +1,9 @@ -using linker.config; -using linker.startup; +using Linker.Config; +using Linker.Startup; using Microsoft.Extensions.DependencyInjection; using System.Reflection; -namespace linker.database +namespace Linker.Store { /// /// 持久化加载插件 @@ -17,17 +17,17 @@ namespace linker.database public StartupLoadType LoadType => StartupLoadType.Normal; bool loaded = false; - public void AddClient(ServiceCollection serviceCollection, Config config, Assembly[] assemblies) + public void AddClient(ServiceCollection serviceCollection, ConfigWrap config, Assembly[] assemblies) { Add(serviceCollection, config, assemblies); } - public void AddServer(ServiceCollection serviceCollection, Config config, Assembly[] assemblies) + public void AddServer(ServiceCollection serviceCollection, ConfigWrap config, Assembly[] assemblies) { Add(serviceCollection, config, assemblies); } - private void Add(ServiceCollection serviceCollection, Config config, Assembly[] assemblies) + private void Add(ServiceCollection serviceCollection, ConfigWrap config, Assembly[] assemblies) { if (loaded == false) { @@ -36,11 +36,11 @@ namespace linker.database } } - public void UseClient(ServiceProvider serviceProvider, Config config, Assembly[] assemblies) + public void UseClient(ServiceProvider serviceProvider, ConfigWrap config, Assembly[] assemblies) { } - public void UseServer(ServiceProvider serviceProvider, Config config, Assembly[] assemblies) + public void UseServer(ServiceProvider serviceProvider, ConfigWrap config, Assembly[] assemblies) { } } diff --git a/linker/store/Storefactory.cs b/linker/store/Storefactory.cs index 091a1b00..893f3fbf 100644 --- a/linker/store/Storefactory.cs +++ b/linker/store/Storefactory.cs @@ -1,8 +1,8 @@ -using linker.libs.extends; +using Linker.Libs.Extends; using LiteDB; using System.Net; -namespace linker.database +namespace Linker.Store { /// diff --git a/publish.bat b/publish.bat index dd18e28c..6c6ff740 100644 --- a/publish.bat +++ b/publish.bat @@ -6,31 +6,31 @@ rd /s /q public\\publish-zip mkdir public\\publish-zip -cd linker.web +cd Linker.web call npm install call npm run build cd ../ for %%r in (win-x64,win-arm64) do ( - dotnet publish ./linker.service -c release -f net8.0 -o public/extends/%%r/linker-%%r/ -r %%r -p:PublishTrimmed=true -p:TrimMode=partial --self-contained true -p:TieredPGO=true -p:DebugType=none -p:DebugSymbols=false -p:EnableCompressionInSingleFile=true -p:DebuggerSupport=false -p:EnableUnsafeBinaryFormatterSerialization=false -p:EnableUnsafeUTF7Encoding=false -p:HttpActivityPropagationSupport=false -p:InvariantGlobalization=true -p:MetadataUpdaterSupport=false -p:UseSystemResourceKeys=true - echo F|xcopy "linker.tray.win\\dist\\*" "public\\extends\\%%r\\linker-%%r\\*" /s /f /h /y - echo F|xcopy "linker\\msquic.dll" "public\\extends\\%%r\\linker-%%r\\msquic.dll" /s /f /h /y - echo F|xcopy "linker\\msquic-openssl.dll" "public\\extends\\%%r\\linker-%%r\\msquic-openssl.dll" /s /f /h /y + dotnet publish ./Linker.service -c release -f net8.0 -o public/extends/%%r/Linker-%%r/ -r %%r -p:PublishTrimmed=true -p:TrimMode=partial --self-contained true -p:TieredPGO=true -p:DebugType=none -p:DebugSymbols=false -p:EnableCompressionInSingleFile=true -p:DebuggerSupport=false -p:EnableUnsafeBinaryFormatterSerialization=false -p:EnableUnsafeUTF7Encoding=false -p:HttpActivityPropagationSupport=false -p:InvariantGlobalization=true -p:MetadataUpdaterSupport=false -p:UseSystemResourceKeys=true + echo F|xcopy "Linker.tray.win\\dist\\*" "public\\extends\\%%r\\Linker-%%r\\*" /s /f /h /y + echo F|xcopy "Linker\\msquic.dll" "public\\extends\\%%r\\Linker-%%r\\msquic.dll" /s /f /h /y + echo F|xcopy "Linker\\msquic-openssl.dll" "public\\extends\\%%r\\Linker-%%r\\msquic-openssl.dll" /s /f /h /y ) for %%r in (linux-x64,linux-arm64,osx-x64,osx-arm64) do ( - echo F|xcopy "linker\\plugins\\tuntap\\tun2socks-%%r" "public\\extends\\%%r\\linker-%%r\\plugins\\tuntap\\tun2socks" /s /f /h /y + echo F|xcopy "Linker\\plugins\\tuntap\\tun2socks-%%r" "public\\extends\\%%r\\Linker-%%r\\plugins\\tuntap\\tun2socks" /s /f /h /y ) for %%r in (win-x64,win-arm64) do ( - echo F|xcopy "linker\\plugins\\tuntap\\tun2socks-%%r" "public\\extends\\%%r\\linker-%%r\\plugins\\tuntap\\tun2socks.exe" /s /f /h /y + echo F|xcopy "Linker\\plugins\\tuntap\\tun2socks-%%r" "public\\extends\\%%r\\Linker-%%r\\plugins\\tuntap\\tun2socks.exe" /s /f /h /y ) for %%r in (win-x64,win-arm64,linux-x64,linux-arm64,osx-x64,osx-arm64) do ( - dotnet publish ./linker -c release -f net8.0 -o ./public/publish/%%r/linker-%%r -r %%r -p:PublishTrimmed=true -p:TrimMode=partial --self-contained true -p:TieredPGO=true -p:DebugType=none -p:DebugSymbols=false -p:PublishSingleFile=true -p:EnableCompressionInSingleFile=true -p:DebuggerSupport=false -p:EnableUnsafeBinaryFormatterSerialization=false -p:EnableUnsafeUTF7Encoding=false -p:HttpActivityPropagationSupport=false -p:InvariantGlobalization=true -p:MetadataUpdaterSupport=false -p:UseSystemResourceKeys=true - echo F|xcopy "public\\extends\\%%r\\linker-%%r\\*" "public\\publish\\%%r\\linker-%%r\\*" /s /f /h /y + dotnet publish ./Linker -c release -f net8.0 -o ./public/publish/%%r/Linker-%%r -r %%r -p:PublishTrimmed=true -p:TrimMode=partial --self-contained true -p:TieredPGO=true -p:DebugType=none -p:DebugSymbols=false -p:PublishSingleFile=true -p:EnableCompressionInSingleFile=true -p:DebuggerSupport=false -p:EnableUnsafeBinaryFormatterSerialization=false -p:EnableUnsafeUTF7Encoding=false -p:HttpActivityPropagationSupport=false -p:InvariantGlobalization=true -p:MetadataUpdaterSupport=false -p:UseSystemResourceKeys=true + echo F|xcopy "public\\extends\\%%r\\Linker-%%r\\*" "public\\publish\\%%r\\Linker-%%r\\*" /s /f /h /y - echo F|xcopy "public\\extends\\any\\*" "public\\publish\\%%r\\linker-%%r\\*" /s /f /h /y + echo F|xcopy "public\\extends\\any\\*" "public\\publish\\%%r\\Linker-%%r\\*" /s /f /h /y - 7z a -tzip ./public/publish-zip/linker-%%r.zip ./public/publish/%%r/* + 7z a -tzip ./public/publish-zip/Linker-%%r.zip ./public/publish/%%r/* )