fix register逻辑

This commit is contained in:
anlicheng 2026-03-11 12:24:50 +08:00
parent 9747629017
commit d31586f0a4
2 changed files with 4 additions and 3 deletions

View File

@ -161,6 +161,7 @@ actor SDLContextActor {
await self.handleRegisterSuperNak(nakPacket: registerSuperNak)
case .peerInfo(let peerInfo):
SDLLogger.shared.log("[SDLContext] peer message: \(peerInfo)")
self.puncherActor.handlePeerInfo(using: self.udpHole, peerInfo: peerInfo)
case .event(let event):
await self.handleEvent(event: event)
case .policyReponse(let policyResponse):

View File

@ -37,14 +37,14 @@ actor SDLPuncherActor {
Task {
//
try? await Task.sleep(for: .seconds(5))
try? await Task.sleep(for: cooldown)
self.endCooldown(for: dstMac)
self.removePendingRequest(for: pktId)
}
}
func handlePeerInfo(using udpHole: SDLUDPHole, peerInfo: SDLPeerInfo) async {
guard let request = pendingRequests.removeValue(forKey: peerInfo.pktID),
func handlePeerInfo(using udpHole: SDLUDPHole?, peerInfo: SDLPeerInfo) async {
guard let udpHole, let request = pendingRequests.removeValue(forKey: peerInfo.pktID),
let remoteAddress = try? await peerInfo.v4Info.socketAddress() else {
return
}