From 2570c74b713200a632332b7d61a5740f58343b5d Mon Sep 17 00:00:00 2001 From: Jonathan Romano Date: Mon, 7 Nov 2022 04:27:48 -0500 Subject: [PATCH] Remove hardcoded port number in AuthPackets Removes the hard coded port numbers in AuthPackets --- dNet/AuthPackets.cpp | 6 +++--- dNet/AuthPackets.h | 3 ++- 2 files changed, 5 insertions(+), 4 deletions(-) diff --git a/dNet/AuthPackets.cpp b/dNet/AuthPackets.cpp index 60fe13c5..636f3fcf 100644 --- a/dNet/AuthPackets.cpp +++ b/dNet/AuthPackets.cpp @@ -29,16 +29,16 @@ void AuthPackets::HandleHandshake(dServer* server, Packet* packet) { inStream.Read(clientVersion); server->GetLogger()->Log("AuthPackets", "Received client version: %i", clientVersion); - SendHandshake(server, packet->systemAddress, server->GetIP(), server->GetPort()); + SendHandshake(server, packet->systemAddress, server->GetIP(), server->GetPort(), server->GetServerType()); } -void AuthPackets::SendHandshake(dServer* server, const SystemAddress& sysAddr, const std::string& nextServerIP, uint16_t nextServerPort) { +void AuthPackets::SendHandshake(dServer* server, const SystemAddress& sysAddr, const std::string& nextServerIP, uint16_t nextServerPort, const ServerType serverType) { RakNet::BitStream bitStream; PacketUtils::WriteHeader(bitStream, SERVER, MSG_SERVER_VERSION_CONFIRM); bitStream.Write(NET_VERSION); bitStream.Write(uint32_t(0x93)); - if (nextServerPort == 1001) bitStream.Write(uint32_t(1)); //Conn: auth + if (serverType == ServerType::Auth) bitStream.Write(uint32_t(1)); //Conn: auth else bitStream.Write(uint32_t(4)); //Conn: world bitStream.Write(uint32_t(0)); //Server process ID diff --git a/dNet/AuthPackets.h b/dNet/AuthPackets.h index e972d2f7..378a5862 100644 --- a/dNet/AuthPackets.h +++ b/dNet/AuthPackets.h @@ -5,11 +5,12 @@ #include "dCommonVars.h" #include "dNetCommon.h" +enum class ServerType : uint32_t; class dServer; namespace AuthPackets { void HandleHandshake(dServer* server, Packet* packet); - void SendHandshake(dServer* server, const SystemAddress& sysAddr, const std::string& nextServerIP, uint16_t nextServerPort); + void SendHandshake(dServer* server, const SystemAddress& sysAddr, const std::string& nextServerIP, uint16_t nextServerPort, const ServerType serverType); void HandleLoginRequest(dServer* server, Packet* packet); void SendLoginResponse(dServer* server, const SystemAddress& sysAddr, eLoginResponse responseCode, const std::string& errorMsg, const std::string& wServerIP, uint16_t wServerPort, std::string username);