Underlying VPN Logic

This commit is contained in:
GFWFighter
2023-10-17 03:15:15 +03:30
parent 7b2129ad6d
commit fe7cdc276e
12 changed files with 869 additions and 28 deletions

View File

@@ -7,9 +7,18 @@
objects = {
/* Begin PBXBuildFile section */
032158B82ADDF8BF008D943B /* VPNManager.swift in Sources */ = {isa = PBXBuildFile; fileRef = 032158B72ADDF8BF008D943B /* VPNManager.swift */; };
032158BA2ADDFCC9008D943B /* TrafficReader.swift in Sources */ = {isa = PBXBuildFile; fileRef = 032158B92ADDFCC9008D943B /* TrafficReader.swift */; };
032158BC2ADDFD09008D943B /* SingBox.swift in Sources */ = {isa = PBXBuildFile; fileRef = 032158BB2ADDFD09008D943B /* SingBox.swift */; };
03E392B82ADDA00E000ADF15 /* NetworkExtension.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 03E392B72ADDA00E000ADF15 /* NetworkExtension.framework */; };
03E392BB2ADDA00F000ADF15 /* PacketTunnelProvider.swift in Sources */ = {isa = PBXBuildFile; fileRef = 03E392BA2ADDA00F000ADF15 /* PacketTunnelProvider.swift */; };
03E392C02ADDA00F000ADF15 /* SingBoxPacketTunnel.appex in Embed Foundation Extensions */ = {isa = PBXBuildFile; fileRef = 03E392B62ADDA00E000ADF15 /* SingBoxPacketTunnel.appex */; settings = {ATTRIBUTES = (RemoveHeadersOnCopy, ); }; };
03E392C92ADDA713000ADF15 /* libcore.xcframework in Frameworks */ = {isa = PBXBuildFile; fileRef = 03E392C82ADDA713000ADF15 /* libcore.xcframework */; };
03E392CC2ADDE078000ADF15 /* ExtensionProvider.swift in Sources */ = {isa = PBXBuildFile; fileRef = 03E392CB2ADDE078000ADF15 /* ExtensionProvider.swift */; };
03E392CF2ADDEFC8000ADF15 /* FilePath.swift in Sources */ = {isa = PBXBuildFile; fileRef = 03E392CE2ADDEFC8000ADF15 /* FilePath.swift */; };
03E392D02ADDF1BD000ADF15 /* FilePath.swift in Sources */ = {isa = PBXBuildFile; fileRef = 03E392CE2ADDEFC8000ADF15 /* FilePath.swift */; };
03E392D22ADDF1F4000ADF15 /* ExtensionPlatformInterface.swift in Sources */ = {isa = PBXBuildFile; fileRef = 03E392D12ADDF1F4000ADF15 /* ExtensionPlatformInterface.swift */; };
03E392D42ADDF262000ADF15 /* Extension+RunBlocking.swift in Sources */ = {isa = PBXBuildFile; fileRef = 03E392D32ADDF262000ADF15 /* Extension+RunBlocking.swift */; };
1498D2341E8E89220040F4C2 /* GeneratedPluginRegistrant.m in Sources */ = {isa = PBXBuildFile; fileRef = 1498D2331E8E89220040F4C2 /* GeneratedPluginRegistrant.m */; };
331C808B294A63AB00263BE5 /* RunnerTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = 331C807B294A618700263BE5 /* RunnerTests.swift */; };
3B3967161E833CAA004F5970 /* AppFrameworkInfo.plist in Resources */ = {isa = PBXBuildFile; fileRef = 3B3967151E833CAA004F5970 /* AppFrameworkInfo.plist */; };
@@ -63,6 +72,9 @@
/* End PBXCopyFilesBuildPhase section */
/* Begin PBXFileReference section */
032158B72ADDF8BF008D943B /* VPNManager.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = VPNManager.swift; sourceTree = "<group>"; };
032158B92ADDFCC9008D943B /* TrafficReader.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = TrafficReader.swift; sourceTree = "<group>"; };
032158BB2ADDFD09008D943B /* SingBox.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = SingBox.swift; sourceTree = "<group>"; };
03E392B62ADDA00E000ADF15 /* SingBoxPacketTunnel.appex */ = {isa = PBXFileReference; explicitFileType = "wrapper.app-extension"; includeInIndex = 0; path = SingBoxPacketTunnel.appex; sourceTree = BUILT_PRODUCTS_DIR; };
03E392B72ADDA00E000ADF15 /* NetworkExtension.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = NetworkExtension.framework; path = System/Library/Frameworks/NetworkExtension.framework; sourceTree = SDKROOT; };
03E392BA2ADDA00F000ADF15 /* PacketTunnelProvider.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = PacketTunnelProvider.swift; sourceTree = "<group>"; };
@@ -70,6 +82,11 @@
03E392BD2ADDA00F000ADF15 /* SingBoxPacketTunnel.entitlements */ = {isa = PBXFileReference; lastKnownFileType = text.plist.entitlements; path = SingBoxPacketTunnel.entitlements; sourceTree = "<group>"; };
03E392C62ADDA064000ADF15 /* Base.xcconfig */ = {isa = PBXFileReference; lastKnownFileType = text.xcconfig; path = Base.xcconfig; sourceTree = "<group>"; };
03E392C72ADDA26A000ADF15 /* Runner.entitlements */ = {isa = PBXFileReference; lastKnownFileType = text.plist.entitlements; path = Runner.entitlements; sourceTree = "<group>"; };
03E392C82ADDA713000ADF15 /* libcore.xcframework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.xcframework; name = libcore.xcframework; path = ../libcore/bin/libcore.xcframework; sourceTree = "<group>"; };
03E392CB2ADDE078000ADF15 /* ExtensionProvider.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = ExtensionProvider.swift; sourceTree = "<group>"; };
03E392CE2ADDEFC8000ADF15 /* FilePath.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = FilePath.swift; sourceTree = "<group>"; };
03E392D12ADDF1F4000ADF15 /* ExtensionPlatformInterface.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = ExtensionPlatformInterface.swift; sourceTree = "<group>"; };
03E392D32ADDF262000ADF15 /* Extension+RunBlocking.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = "Extension+RunBlocking.swift"; sourceTree = "<group>"; };
0F7E04B7207513677AF77112 /* Pods-RunnerTests.profile.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-RunnerTests.profile.xcconfig"; path = "Target Support Files/Pods-RunnerTests/Pods-RunnerTests.profile.xcconfig"; sourceTree = "<group>"; };
1498D2321E8E86230040F4C2 /* GeneratedPluginRegistrant.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = GeneratedPluginRegistrant.h; sourceTree = "<group>"; };
1498D2331E8E89220040F4C2 /* GeneratedPluginRegistrant.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = GeneratedPluginRegistrant.m; sourceTree = "<group>"; };
@@ -100,6 +117,7 @@
isa = PBXFrameworksBuildPhase;
buildActionMask = 2147483647;
files = (
03E392C92ADDA713000ADF15 /* libcore.xcframework in Frameworks */,
03E392B82ADDA00E000ADF15 /* NetworkExtension.framework in Frameworks */,
);
runOnlyForDeploymentPostprocessing = 0;
@@ -123,16 +141,45 @@
/* End PBXFrameworksBuildPhase section */
/* Begin PBXGroup section */
032158B62ADDF8AF008D943B /* VPN */ = {
isa = PBXGroup;
children = (
032158B72ADDF8BF008D943B /* VPNManager.swift */,
);
path = VPN;
sourceTree = "<group>";
};
03E392B92ADDA00F000ADF15 /* SingBoxPacketTunnel */ = {
isa = PBXGroup;
children = (
03E392CA2ADDE063000ADF15 /* SingBox */,
03E392BA2ADDA00F000ADF15 /* PacketTunnelProvider.swift */,
032158B92ADDFCC9008D943B /* TrafficReader.swift */,
03E392BC2ADDA00F000ADF15 /* Info.plist */,
03E392BD2ADDA00F000ADF15 /* SingBoxPacketTunnel.entitlements */,
);
path = SingBoxPacketTunnel;
sourceTree = "<group>";
};
03E392CA2ADDE063000ADF15 /* SingBox */ = {
isa = PBXGroup;
children = (
03E392CB2ADDE078000ADF15 /* ExtensionProvider.swift */,
03E392D12ADDF1F4000ADF15 /* ExtensionPlatformInterface.swift */,
03E392D32ADDF262000ADF15 /* Extension+RunBlocking.swift */,
032158BB2ADDFD09008D943B /* SingBox.swift */,
);
path = SingBox;
sourceTree = "<group>";
};
03E392CD2ADDE103000ADF15 /* Shared */ = {
isa = PBXGroup;
children = (
03E392CE2ADDEFC8000ADF15 /* FilePath.swift */,
);
path = Shared;
sourceTree = "<group>";
};
311A4F4314861E02331B8DAC /* Pods */ = {
isa = PBXGroup;
children = (
@@ -169,6 +216,7 @@
97C146E51CF9000F007C117D = {
isa = PBXGroup;
children = (
03E392CD2ADDE103000ADF15 /* Shared */,
9740EEB11CF90186004384FC /* Flutter */,
97C146F01CF9000F007C117D /* Runner */,
03E392B92ADDA00F000ADF15 /* SingBoxPacketTunnel */,
@@ -192,6 +240,7 @@
97C146F01CF9000F007C117D /* Runner */ = {
isa = PBXGroup;
children = (
032158B62ADDF8AF008D943B /* VPN */,
03E392C72ADDA26A000ADF15 /* Runner.entitlements */,
97C146FA1CF9000F007C117D /* Main.storyboard */,
97C146FD1CF9000F007C117D /* Assets.xcassets */,
@@ -211,6 +260,7 @@
60F1D4AAC33ACF5C8307310D /* Pods_Runner.framework */,
DDA50BDF2E5E5DDA3995F24D /* Pods_RunnerTests.framework */,
03E392B72ADDA00E000ADF15 /* NetworkExtension.framework */,
03E392C82ADDA713000ADF15 /* libcore.xcframework */,
);
name = Frameworks;
sourceTree = "<group>";
@@ -449,7 +499,13 @@
isa = PBXSourcesBuildPhase;
buildActionMask = 2147483647;
files = (
032158BA2ADDFCC9008D943B /* TrafficReader.swift in Sources */,
032158BC2ADDFD09008D943B /* SingBox.swift in Sources */,
03E392D22ADDF1F4000ADF15 /* ExtensionPlatformInterface.swift in Sources */,
03E392CC2ADDE078000ADF15 /* ExtensionProvider.swift in Sources */,
03E392BB2ADDA00F000ADF15 /* PacketTunnelProvider.swift in Sources */,
03E392CF2ADDEFC8000ADF15 /* FilePath.swift in Sources */,
03E392D42ADDF262000ADF15 /* Extension+RunBlocking.swift in Sources */,
);
runOnlyForDeploymentPostprocessing = 0;
};
@@ -467,6 +523,8 @@
files = (
74858FAF1ED2DC5600515810 /* AppDelegate.swift in Sources */,
1498D2341E8E89220040F4C2 /* GeneratedPluginRegistrant.m in Sources */,
032158B82ADDF8BF008D943B /* VPNManager.swift in Sources */,
03E392D02ADDF1BD000ADF15 /* FilePath.swift in Sources */,
);
runOnlyForDeploymentPostprocessing = 0;
};
@@ -525,7 +583,7 @@
INFOPLIST_FILE = SingBoxPacketTunnel/Info.plist;
INFOPLIST_KEY_CFBundleDisplayName = SingBoxPacketTunnel;
INFOPLIST_KEY_NSHumanReadableCopyright = "";
IPHONEOS_DEPLOYMENT_TARGET = 17.0;
IPHONEOS_DEPLOYMENT_TARGET = 15.0;
LD_RUNPATH_SEARCH_PATHS = (
"$(inherited)",
"@executable_path/Frameworks",
@@ -566,7 +624,7 @@
INFOPLIST_FILE = SingBoxPacketTunnel/Info.plist;
INFOPLIST_KEY_CFBundleDisplayName = SingBoxPacketTunnel;
INFOPLIST_KEY_NSHumanReadableCopyright = "";
IPHONEOS_DEPLOYMENT_TARGET = 17.0;
IPHONEOS_DEPLOYMENT_TARGET = 15.0;
LD_RUNPATH_SEARCH_PATHS = (
"$(inherited)",
"@executable_path/Frameworks",
@@ -604,7 +662,7 @@
INFOPLIST_FILE = SingBoxPacketTunnel/Info.plist;
INFOPLIST_KEY_CFBundleDisplayName = SingBoxPacketTunnel;
INFOPLIST_KEY_NSHumanReadableCopyright = "";
IPHONEOS_DEPLOYMENT_TARGET = 17.0;
IPHONEOS_DEPLOYMENT_TARGET = 15.0;
LD_RUNPATH_SEARCH_PATHS = (
"$(inherited)",
"@executable_path/Frameworks",
@@ -663,7 +721,7 @@
GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE;
GCC_WARN_UNUSED_FUNCTION = YES;
GCC_WARN_UNUSED_VARIABLE = YES;
IPHONEOS_DEPLOYMENT_TARGET = 11.0;
IPHONEOS_DEPLOYMENT_TARGET = 15.0;
MTL_ENABLE_DEBUG_INFO = NO;
SDKROOT = iphoneos;
SUPPORTED_PLATFORMS = iphoneos;
@@ -792,7 +850,7 @@
GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE;
GCC_WARN_UNUSED_FUNCTION = YES;
GCC_WARN_UNUSED_VARIABLE = YES;
IPHONEOS_DEPLOYMENT_TARGET = 11.0;
IPHONEOS_DEPLOYMENT_TARGET = 15.0;
MTL_ENABLE_DEBUG_INFO = YES;
ONLY_ACTIVE_ARCH = YES;
SDKROOT = iphoneos;
@@ -841,7 +899,7 @@
GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE;
GCC_WARN_UNUSED_FUNCTION = YES;
GCC_WARN_UNUSED_VARIABLE = YES;
IPHONEOS_DEPLOYMENT_TARGET = 11.0;
IPHONEOS_DEPLOYMENT_TARGET = 15.0;
MTL_ENABLE_DEBUG_INFO = NO;
SDKROOT = iphoneos;
SUPPORTED_PLATFORMS = iphoneos;