fix proto

This commit is contained in:
anlicheng 2026-04-02 17:47:58 +08:00
parent 2f354c94fb
commit b5a20d12c9
2 changed files with 7 additions and 30 deletions

View File

@ -448,10 +448,7 @@ actor SDLContextActor {
} }
private func handleEvent(event: SDLEvent) async { private func handleEvent(event: SDLEvent) async {
switch event { switch event.event {
// case .dropMacs(let dropMacsEvent):
// SDLLogger.shared.log("[SDLContext] drop macs", level: .info)
// await self.arpServer.dropMacs(macs: dropMacsEvent.macs)
case .natChanged(let natChangedEvent): case .natChanged(let natChangedEvent):
let dstMac = natChangedEvent.mac let dstMac = natChangedEvent.mac
SDLLogger.shared.log("[SDLContext] natChangedEvent, dstMac: \(dstMac)", level: .info) SDLLogger.shared.log("[SDLContext] natChangedEvent, dstMac: \(dstMac)", level: .info)
@ -467,13 +464,15 @@ actor SDLContextActor {
register.dstMac = sendRegisterEvent.dstMac register.dstMac = sendRegisterEvent.dstMac
self.udpHole?.send(type: .register, data: try! register.serializedData(), remoteAddress: remoteAddress) 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) let alertNotice = NoticeMessage.alert(alert: shutdownEvent.message)
self.noticeClient?.send(data: alertNotice) self.noticeClient?.send(data: alertNotice)
// 退 // 退
let error = NSError(domain: "com.jihe.punchnet.tun", code: -2) let error = NSError(domain: "com.jihe.punchnet.tun", code: -2)
self.provider.cancelTunnelWithError(error) self.provider.cancelTunnelWithError(error)
case .none:
()
} }
} }

View File

@ -237,33 +237,11 @@ final class SDLQUICClient {
} }
return .arpResponse(arpResponse) return .arpResponse(arpResponse)
case .event: case .event:
guard let eventVal = buffer.readInteger(as: UInt8.self), guard let bytes = buffer.readBytes(length: buffer.readableBytes),
let event = SDLEventType(rawValue: eventVal), let event = try? SDLEvent(serializedBytes: bytes) else {
let bytes = buffer.readBytes(length: buffer.readableBytes) else {
SDLLogger.shared.log("[SDLQUICClient] decode error 15")
return nil return nil
} }
return .event(event)
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))
}
case .pong: case .pong:
return .pong return .pong
default: default: