diff --git a/src/OverteClient.cpp b/src/OverteClient.cpp index b87078f..d3b646b 100644 --- a/src/OverteClient.cpp +++ b/src/OverteClient.cpp @@ -268,16 +268,17 @@ void OverteClient::parseDomainPacket(const char* data, size_t len) { if (len < 6) return; // NLPacket header is minimum 6 bytes // Parse NLPacket header - auto header = NLPacket::parseHeader(data, len); - if (!header) { + NLPacket::Header header; + const uint8_t* udata = reinterpret_cast(data); + if (!NLPacket::parseHeader(udata, len, header)) { std::cerr << "[OverteClient] Failed to parse NLPacket header" << std::endl; return; } - PacketType packetType = NLPacket::getType(data, len); + PacketType packetType = NLPacket::getType(udata, len); std::cout << "[OverteClient] Domain packet type: " << static_cast(packetType) << " (0x" << std::hex << static_cast(packetType) << std::dec << ")" - << " version: " << (int)header->version << std::endl; + << " version: " << (int)header.version << std::endl; // Payload starts after header (6 bytes base, +2 if has source ID) const char* payload = data + 6; // Assuming no source ID for now @@ -292,10 +293,6 @@ void OverteClient::parseDomainPacket(const char* data, size_t len) { handleDomainConnectionDenied(payload, payloadLen); break; - case PacketType::DomainServerConnectionDenied: - handleDomainConnectionDenied(payload, payloadLen); - break; - case PacketType::DomainServerRequireDTLS: std::cout << "[OverteClient] Domain server requires DTLS (not yet implemented)" << std::endl; break;