fix
This commit is contained in:
parent
bd10ea9b99
commit
5031835484
@ -18,6 +18,7 @@ import Punchnet
|
||||
|
||||
class PacketTunnelProvider: NEPacketTunnelProvider {
|
||||
var context: SDLContext?
|
||||
private var rootTask: Task<Void, Error>?
|
||||
|
||||
override func startTunnel(options: [String : NSObject]?, completionHandler: @escaping (Error?) -> Void) {
|
||||
// host: "192.168.0.101", port: 1265
|
||||
@ -66,24 +67,27 @@ class PacketTunnelProvider: NEPacketTunnelProvider {
|
||||
let rsaCipher = try! CCRSACipher(keySize: 1024)
|
||||
let aesChiper = CCAESChiper()
|
||||
|
||||
Task {
|
||||
self.rootTask = Task {
|
||||
do {
|
||||
self.context = SDLContext(provider: self, config: config, rsaCipher: rsaCipher, aesCipher: aesChiper, logger: SDLLogger(level: .debug))
|
||||
try await self.context?.start()
|
||||
completionHandler(nil)
|
||||
} catch let err {
|
||||
completionHandler(err)
|
||||
NSLog("[PacketTunnelProvider] exit with error: \(err)")
|
||||
exit(-1)
|
||||
}
|
||||
}
|
||||
|
||||
completionHandler(nil)
|
||||
}
|
||||
|
||||
override func stopTunnel(with reason: NEProviderStopReason, completionHandler: @escaping () -> Void) {
|
||||
// Add code here to start the process of stopping the tunnel.
|
||||
self.rootTask?.cancel()
|
||||
Task {
|
||||
await self.context?.stop()
|
||||
self.context = nil
|
||||
}
|
||||
self.context = nil
|
||||
self.rootTask = nil
|
||||
|
||||
completionHandler()
|
||||
}
|
||||
|
||||
|
||||
@ -562,7 +562,7 @@
|
||||
PRODUCT_BUNDLE_IDENTIFIER = com.jihe.punchnet;
|
||||
PRODUCT_NAME = "$(TARGET_NAME)";
|
||||
PROVISIONING_PROFILE_SPECIFIER = "";
|
||||
"PROVISIONING_PROFILE_SPECIFIER[sdk=macosx*]" = jihe_punchnet_macos;
|
||||
"PROVISIONING_PROFILE_SPECIFIER[sdk=macosx*]" = MacPunchnet;
|
||||
SWIFT_EMIT_LOC_STRINGS = YES;
|
||||
SWIFT_VERSION = 5.0;
|
||||
};
|
||||
@ -594,7 +594,7 @@
|
||||
PRODUCT_BUNDLE_IDENTIFIER = com.jihe.punchnet;
|
||||
PRODUCT_NAME = "$(TARGET_NAME)";
|
||||
PROVISIONING_PROFILE_SPECIFIER = "";
|
||||
"PROVISIONING_PROFILE_SPECIFIER[sdk=macosx*]" = jihe_punchnet_macos;
|
||||
"PROVISIONING_PROFILE_SPECIFIER[sdk=macosx*]" = MacPunchnet;
|
||||
SWIFT_EMIT_LOC_STRINGS = YES;
|
||||
SWIFT_VERSION = 5.0;
|
||||
};
|
||||
@ -674,6 +674,7 @@
|
||||
isa = XCBuildConfiguration;
|
||||
buildSettings = {
|
||||
CODE_SIGN_ENTITLEMENTS = Tun/Tun.entitlements;
|
||||
CODE_SIGN_IDENTITY = "Apple Development";
|
||||
"CODE_SIGN_IDENTITY[sdk=macosx*]" = "Mac Developer";
|
||||
CODE_SIGN_STYLE = Manual;
|
||||
CURRENT_PROJECT_VERSION = 1;
|
||||
@ -694,7 +695,7 @@
|
||||
PRODUCT_BUNDLE_IDENTIFIER = com.jihe.punchnet.tun;
|
||||
PRODUCT_NAME = "$(TARGET_NAME)";
|
||||
PROVISIONING_PROFILE_SPECIFIER = "";
|
||||
"PROVISIONING_PROFILE_SPECIFIER[sdk=macosx*]" = jihe_punchnet_tun_macos;
|
||||
"PROVISIONING_PROFILE_SPECIFIER[sdk=macosx*]" = MacPunchnetTun;
|
||||
SKIP_INSTALL = YES;
|
||||
SWIFT_EMIT_LOC_STRINGS = YES;
|
||||
SWIFT_VERSION = 5.0;
|
||||
@ -705,6 +706,7 @@
|
||||
isa = XCBuildConfiguration;
|
||||
buildSettings = {
|
||||
CODE_SIGN_ENTITLEMENTS = Tun/Tun.entitlements;
|
||||
CODE_SIGN_IDENTITY = "Apple Development";
|
||||
"CODE_SIGN_IDENTITY[sdk=macosx*]" = "Mac Developer";
|
||||
CODE_SIGN_STYLE = Manual;
|
||||
CURRENT_PROJECT_VERSION = 1;
|
||||
@ -725,7 +727,7 @@
|
||||
PRODUCT_BUNDLE_IDENTIFIER = com.jihe.punchnet.tun;
|
||||
PRODUCT_NAME = "$(TARGET_NAME)";
|
||||
PROVISIONING_PROFILE_SPECIFIER = "";
|
||||
"PROVISIONING_PROFILE_SPECIFIER[sdk=macosx*]" = jihe_punchnet_tun_macos;
|
||||
"PROVISIONING_PROFILE_SPECIFIER[sdk=macosx*]" = MacPunchnetTun;
|
||||
SKIP_INSTALL = YES;
|
||||
SWIFT_EMIT_LOC_STRINGS = YES;
|
||||
SWIFT_VERSION = 5.0;
|
||||
@ -788,7 +790,7 @@
|
||||
repositoryURL = "https://gitea.s5s8.com/anlicheng/swiftlib_sdlan.git";
|
||||
requirement = {
|
||||
kind = exactVersion;
|
||||
version = 2.2.0;
|
||||
version = 2.2.2;
|
||||
};
|
||||
};
|
||||
/* End XCRemoteSwiftPackageReference section */
|
||||
|
||||
@ -1,5 +1,5 @@
|
||||
{
|
||||
"originHash" : "2c771b2bd4bccdc5777d69cc734485452a1e854c0123ba591d596b3f580f4cb8",
|
||||
"originHash" : "f895c313fc3b8bbb6ccda8f228cf023bf2259c0a044d992827796f28685daa8c",
|
||||
"pins" : [
|
||||
{
|
||||
"identity" : "swift-atomics",
|
||||
@ -51,8 +51,8 @@
|
||||
"kind" : "remoteSourceControl",
|
||||
"location" : "https://gitea.s5s8.com/anlicheng/swiftlib_sdlan.git",
|
||||
"state" : {
|
||||
"revision" : "2c05d71dbe3684e51e9de55910619156ebe360c6",
|
||||
"version" : "2.2.0"
|
||||
"revision" : "90939a68c10e52f327d2ad1e55c1a62f56f7928b",
|
||||
"version" : "2.2.2"
|
||||
}
|
||||
}
|
||||
],
|
||||
|
||||
@ -7,12 +7,25 @@
|
||||
<key>Tun.xcscheme_^#shared#^_</key>
|
||||
<dict>
|
||||
<key>orderHint</key>
|
||||
<integer>1</integer>
|
||||
<integer>0</integer>
|
||||
</dict>
|
||||
<key>punchnet.xcscheme_^#shared#^_</key>
|
||||
<dict>
|
||||
<key>orderHint</key>
|
||||
<integer>0</integer>
|
||||
<integer>1</integer>
|
||||
</dict>
|
||||
</dict>
|
||||
<key>SuppressBuildableAutocreation</key>
|
||||
<dict>
|
||||
<key>C8A77EF22DD1E6D000195617</key>
|
||||
<dict>
|
||||
<key>primary</key>
|
||||
<true/>
|
||||
</dict>
|
||||
<key>C8A77F262DD1E77B00195617</key>
|
||||
<dict>
|
||||
<key>primary</key>
|
||||
<true/>
|
||||
</dict>
|
||||
</dict>
|
||||
</dict>
|
||||
|
||||
@ -31,7 +31,6 @@ final class UDPNoticeCenterServer: ChannelInboundHandler {
|
||||
.channelInitializer { channel in
|
||||
channel.pipeline.addHandler(self)
|
||||
}
|
||||
|
||||
self.channel = try! bootstrap.bind(host: "127.0.0.1", port: 50195).wait()
|
||||
}
|
||||
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user