From a5bc567e84902d55fe1f2eec9df621d984a0d808 Mon Sep 17 00:00:00 2001 From: oy Date: Sun, 13 Jun 2010 19:34:14 +0200 Subject: [PATCH] fixed a server register issue --- src/engine/server/register.cpp | 17 +++++++++++++++++ 1 file changed, 17 insertions(+) diff --git a/src/engine/server/register.cpp b/src/engine/server/register.cpp index 959b9288e..5e49f4990 100644 --- a/src/engine/server/register.cpp +++ b/src/engine/server/register.cpp @@ -231,6 +231,23 @@ void CRegister::RegisterUpdate() int CRegister::RegisterProcessPacket(CNetChunk *pPacket) { + // check for masterserver address + bool Valid = false; + NETADDR Addr1 = pPacket->m_Address; + Addr1.port = 0; + for(int i = 0; i < IMasterServer::MAX_MASTERSERVERS; i++) + { + NETADDR Addr2 = m_aMasterserverInfo[i].m_Addr; + Addr2.port = 0; + if(net_addr_comp(&Addr1, &Addr2) == 0) + { + Valid = true; + break; + } + } + if(!Valid) + return 0; + if(pPacket->m_DataSize == sizeof(SERVERBROWSE_FWCHECK) && mem_comp(pPacket->m_pData, SERVERBROWSE_FWCHECK, sizeof(SERVERBROWSE_FWCHECK)) == 0) {