fix
This commit is contained in:
parent
5bb971bef3
commit
faebe09da0
@ -44,7 +44,7 @@ public class SDLContext {
|
||||
|
||||
// 依赖的变量
|
||||
var udpHole: SDLUDPHole?
|
||||
var providerActor: SDLTunnelProviderActor
|
||||
var providerAdapter: SDLTunnelProviderAdapter
|
||||
var puncherActor: SDLPuncherActor
|
||||
// dns的client对象
|
||||
var dnsClient: SDLDNSClient?
|
||||
@ -82,7 +82,7 @@ public class SDLContext {
|
||||
|
||||
self.sessionManager = SessionManager()
|
||||
self.arpServer = ArpServer(known_macs: [:])
|
||||
self.providerActor = SDLTunnelProviderActor(provider: provider, logger: logger)
|
||||
self.providerAdapter = SDLTunnelProviderAdapter(provider: provider, logger: logger)
|
||||
self.puncherActor = SDLPuncherActor(querySocketAddress: config.stunSocketAddress, logger: logger)
|
||||
}
|
||||
|
||||
@ -135,7 +135,7 @@ public class SDLContext {
|
||||
if let packetFlow = self.dnsClient?.packetFlow {
|
||||
for await packet in packetFlow {
|
||||
let nePacket = NEPacket(data: packet, protocolFamily: 2)
|
||||
await self.providerActor.writePackets(packets: [nePacket])
|
||||
self.providerAdapter.writePackets(packets: [nePacket])
|
||||
}
|
||||
}
|
||||
}
|
||||
@ -248,7 +248,7 @@ public class SDLContext {
|
||||
self.logger.log("[SDLContext] get registerSuperAck, aes_key len: \(aesKey.count)", level: .info)
|
||||
// 服务器分配的tun网卡信息
|
||||
do {
|
||||
let ipAddress = try await self.providerActor.setNetworkSettings(networkAddress: self.config.networkAddress, dnsServer: SDLDNSClient.Helper.dnsServer)
|
||||
let ipAddress = try await self.providerAdapter.setNetworkSettings(networkAddress: self.config.networkAddress, dnsServer: SDLDNSClient.Helper.dnsServer)
|
||||
self.noticeClient?.send(data: NoticeMessage.ipAdress(ip: ipAddress))
|
||||
|
||||
self.startReader()
|
||||
@ -377,7 +377,7 @@ public class SDLContext {
|
||||
return
|
||||
}
|
||||
let packet = NEPacket(data: ipPacket.data, protocolFamily: 2)
|
||||
await self.providerActor.writePackets(packets: [packet])
|
||||
self.providerAdapter.writePackets(packets: [packet])
|
||||
default:
|
||||
self.logger.log("[SDLContext] get invalid packet", level: .debug)
|
||||
}
|
||||
@ -406,7 +406,7 @@ public class SDLContext {
|
||||
// 开启新的任务
|
||||
self.readTask = Task(priority: .high) {
|
||||
repeat {
|
||||
let packets = await self.providerActor.readPackets()
|
||||
let packets = await self.providerAdapter.readPackets()
|
||||
Task {
|
||||
let ipPackets = packets.compactMap { IPPacket($0) }
|
||||
await self.batchProcessPackets(batchSize: 20, packets: ipPackets)
|
||||
@ -445,7 +445,7 @@ public class SDLContext {
|
||||
// 本地通讯, 目标地址是本地服务器的ip地址
|
||||
if dstIp == networkAddr.ip {
|
||||
let nePacket = NEPacket(data: packet.data, protocolFamily: 2)
|
||||
await self.providerActor.writePackets(packets: [nePacket])
|
||||
self.providerAdapter.writePackets(packets: [nePacket])
|
||||
return
|
||||
}
|
||||
|
||||
|
||||
@ -15,7 +15,7 @@ import Combine
|
||||
1. 处理rsa的加解密逻辑
|
||||
*/
|
||||
|
||||
actor SDLTunnelProviderActor {
|
||||
final class SDLTunnelProviderAdapter {
|
||||
|
||||
// 路由信息
|
||||
struct Route {
|
||||
@ -27,9 +27,6 @@ actor SDLTunnelProviderActor {
|
||||
}
|
||||
}
|
||||
|
||||
// 数据包读取任务
|
||||
private var readTask: Task<(), Never>?
|
||||
|
||||
let provider: NEPacketTunnelProvider
|
||||
let logger: SDLLogger
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user