This commit is contained in:
anlicheng 2026-04-15 17:31:55 +08:00
parent 7cf9d1afc1
commit df7753cda7

View File

@ -48,6 +48,7 @@ actor SDLContextActor {
private var udpHole: SDLUDPHole?
private var udpHoleWorkers: [Task<Void, Never>]?
private var udpHoleLocalAddress: SocketAddress?
private var udpHoleV6: SDLUDPHoleV6?
private var udpHoleV6Workers: [Task<Void, Never>]?
private var udpHoleV6LocalAddress: SocketAddress?
@ -392,16 +393,12 @@ actor SDLContextActor {
self.quicClient?.stop()
self.quicClient = nil
if let dnsClient = self.dnsClient {
await dnsClient.stop()
}
await self.dnsClient?.stop()
self.dnsWorker?.cancel()
self.dnsWorker = nil
self.dnsClient = nil
if let dnsLocalClient = self.dnsLocalClient {
await dnsLocalClient.stop()
}
await self.dnsLocalClient?.stop()
self.dnsLocalWorker?.cancel()
self.dnsLocalWorker = nil
self.dnsLocalClient = nil
@ -424,8 +421,7 @@ actor SDLContextActor {
self.dataCipher = nil
}
private func publishTunnelEvent(code: Int? = nil,
message: String) {
private func publishTunnelEvent(code: Int? = nil, message: String) {
SDLTunnelAppNotifier.shared.publish(code: code, message: message)
}
@ -849,6 +845,11 @@ extension SDLContextActor {
private func handleHoleControlMessage(_ message: SDLHoleControlMessage, localAddress: SocketAddress, remoteAddress: SocketAddress, source: UDPHoleKind) async {
switch message {
case .stunReply(_):
guard source == .v4 else {
return
}
SDLLogger.log("[SDLContext] get a stunReply", for: .debug)
case .stunProbeReply(let probeReply):
guard source == .v4 else {
return
@ -858,9 +859,6 @@ extension SDLContextActor {
try? self.handleRegister(remoteAddress: remoteAddress, register: register)
case .registerAck(let registerAck):
self.handleRegisterAck(remoteAddress: remoteAddress, registerAck: registerAck)
case .stunReply(_):
//SDLLogger.shared.log("[SDLContext] get a stunReply: \(stunReply)")
()
}
}
@ -932,6 +930,7 @@ extension SDLContextActor {
()
}
}
}
private extension UInt32 {