From b5a20d12c90d7b8d7424c0895b042e42bf06cd07 Mon Sep 17 00:00:00 2001 From: anlicheng <244108715@qq.com> Date: Thu, 2 Apr 2026 17:47:58 +0800 Subject: [PATCH] fix proto --- Tun/Punchnet/Actors/SDLContextActor.swift | 9 ++++---- Tun/Punchnet/Actors/SDLQuicClient.swift | 28 +++-------------------- 2 files changed, 7 insertions(+), 30 deletions(-) diff --git a/Tun/Punchnet/Actors/SDLContextActor.swift b/Tun/Punchnet/Actors/SDLContextActor.swift index 5b09b25..e22608d 100644 --- a/Tun/Punchnet/Actors/SDLContextActor.swift +++ b/Tun/Punchnet/Actors/SDLContextActor.swift @@ -448,10 +448,7 @@ actor SDLContextActor { } private func handleEvent(event: SDLEvent) async { - switch event { - // case .dropMacs(let dropMacsEvent): - // SDLLogger.shared.log("[SDLContext] drop macs", level: .info) - // await self.arpServer.dropMacs(macs: dropMacsEvent.macs) + switch event.event { case .natChanged(let natChangedEvent): let dstMac = natChangedEvent.mac SDLLogger.shared.log("[SDLContext] natChangedEvent, dstMac: \(dstMac)", level: .info) @@ -467,13 +464,15 @@ actor SDLContextActor { register.dstMac = sendRegisterEvent.dstMac self.udpHole?.send(type: .register, data: try! register.serializedData(), remoteAddress: remoteAddress) } - case .networkShutdown(let shutdownEvent): + case .shutdown(let shutdownEvent): let alertNotice = NoticeMessage.alert(alert: shutdownEvent.message) self.noticeClient?.send(data: alertNotice) // 报告错误并退出 let error = NSError(domain: "com.jihe.punchnet.tun", code: -2) self.provider.cancelTunnelWithError(error) + case .none: + () } } diff --git a/Tun/Punchnet/Actors/SDLQuicClient.swift b/Tun/Punchnet/Actors/SDLQuicClient.swift index f151d7b..9112494 100644 --- a/Tun/Punchnet/Actors/SDLQuicClient.swift +++ b/Tun/Punchnet/Actors/SDLQuicClient.swift @@ -237,33 +237,11 @@ final class SDLQUICClient { } return .arpResponse(arpResponse) case .event: - guard let eventVal = buffer.readInteger(as: UInt8.self), - let event = SDLEventType(rawValue: eventVal), - let bytes = buffer.readBytes(length: buffer.readableBytes) else { - SDLLogger.shared.log("[SDLQUICClient] decode error 15") + guard let bytes = buffer.readBytes(length: buffer.readableBytes), + let event = try? SDLEvent(serializedBytes: bytes) else { return nil } - - switch event { - case .natChanged: - guard let natChangedEvent = try? SDLNatChangedEvent(serializedBytes: bytes) else { - SDLLogger.shared.log("[SDLQUICClient] decode error 16") - return nil - } - return .event(.natChanged(natChangedEvent)) - case .sendRegister: - guard let sendRegisterEvent = try? SDLSendRegisterEvent(serializedBytes: bytes) else { - SDLLogger.shared.log("[SDLQUICClient] decode error 17") - return nil - } - return .event(.sendRegister(sendRegisterEvent)) - case .networkShutdown: - guard let networkShutdownEvent = try? SDLNetworkShutdownEvent(serializedBytes: bytes) else { - SDLLogger.shared.log("[SDLQUICClient] decode error 18") - return nil - } - return .event(.networkShutdown(networkShutdownEvent)) - } + return .event(event) case .pong: return .pong default: