From 68ba14fc2f2a5117a501986cd6cf2987e72c4992 Mon Sep 17 00:00:00 2001 From: AriDEV Date: Fri, 29 Dec 2023 21:42:33 +0100 Subject: [PATCH] Server/PacketIO: Enable CMSG_LFG_GET_STATUS --- src/server/game/Server/Protocol/Opcodes.cpp | 2 +- src/server/game/Warden/WardenMac.cpp | 9 +++++---- src/server/game/Warden/WardenWin.cpp | 10 +++++----- 3 files changed, 11 insertions(+), 10 deletions(-) diff --git a/src/server/game/Server/Protocol/Opcodes.cpp b/src/server/game/Server/Protocol/Opcodes.cpp index 11106ca797..ef0114471e 100644 --- a/src/server/game/Server/Protocol/Opcodes.cpp +++ b/src/server/game/Server/Protocol/Opcodes.cpp @@ -252,6 +252,7 @@ void OpcodeTable::InitializeClientTable() DEFINE_OPCODE_HANDLER(CMSG_LFD_PROPOSAL_RESULT, 0x1D9D, STATUS_LOGGEDIN, PROCESS_THREADUNSAFE, &WorldSession::HandleLfgProposalResultOpcode ); // 5.4.8 18414 DEFINE_OPCODE_HANDLER(CMSG_LFD_SET_BOOT_VOTE, 0x17BE, STATUS_LOGGEDIN, PROCESS_THREADUNSAFE, &WorldSession::HandleLFDSetBootVoteOpcode ); // 5.4.8 18414 DEFINE_OPCODE_HANDLER(CMSG_LFD_TELEPORT, 0x1AA6, STATUS_LOGGEDIN, PROCESS_THREADUNSAFE, &WorldSession::HandleLFDTeleportOpcode ); // 5.4.8 18414 + DEFINE_OPCODE_HANDLER(CMSG_LFG_GET_STATUS, 0x032D, STATUS_LOGGEDIN, PROCESS_THREADSAFE, &WorldSession::HandleLfgGetStatus); DEFINE_OPCODE_HANDLER(CMSG_LFG_SET_ROLES, 0x08A2, STATUS_LOGGEDIN, PROCESS_THREADUNSAFE, &WorldSession::HandleLfgSetRolesOpcode ); // 5.4.8 18414 DEFINE_OPCODE_HANDLER(CMSG_LF_GUILD_ADD_APPLICATION, 0x0C63, STATUS_LOGGEDIN, PROCESS_THREADUNSAFE, &WorldSession::HandleGuildFinderAddApplication ); // 5.4.8 18414 DEFINE_OPCODE_HANDLER(CMSG_LF_GUILD_BROWSE, 0x159A, STATUS_LOGGEDIN, PROCESS_THREADUNSAFE, &WorldSession::HandleGuildFinderBrowse ); // 5.4.8 18414 @@ -508,7 +509,6 @@ void OpcodeTable::InitializeClientTable() DEFINE_OPCODE_HANDLER(CMSG_GUILD_REQUEST_MAX_DAILY_XP, 0x0000, STATUS_UNHANDLED, PROCESS_THREADUNSAFE, &WorldSession::HandleGuildRequestMaxDailyXP); DEFINE_OPCODE_HANDLER(CMSG_LEARN_PREVIEW_TALENTS, 0x0000, STATUS_UNHANDLED, PROCESS_THREADUNSAFE, &WorldSession::HandleLearnPreviewTalents); DEFINE_OPCODE_HANDLER(CMSG_LEARN_PREVIEW_TALENTS_PET, 0x0000, STATUS_UNHANDLED, PROCESS_THREADUNSAFE, &WorldSession::HandleLearnPreviewTalentsPet); - DEFINE_OPCODE_HANDLER(CMSG_LFG_GET_STATUS, 0x0000, STATUS_UNHANDLED, PROCESS_THREADSAFE, &WorldSession::HandleLfgGetStatus ); DEFINE_OPCODE_HANDLER(CMSG_LF_GUILD_POST_REQUEST, 0x0000, STATUS_UNHANDLED, PROCESS_THREADUNSAFE, &WorldSession::HandleGuildFinderPostRequest); DEFINE_OPCODE_HANDLER(CMSG_LOOT_MASTER_GIVE, 0x0000, STATUS_UNHANDLED, PROCESS_THREADUNSAFE, &WorldSession::HandleLootMasterGiveOpcode); DEFINE_OPCODE_HANDLER(CMSG_MESSAGECHAT_ADDON_BATTLEGROUND, 0x0000, STATUS_UNHANDLED, PROCESS_THREADUNSAFE, &WorldSession::HandleAddonMessagechatOpcode); diff --git a/src/server/game/Warden/WardenMac.cpp b/src/server/game/Warden/WardenMac.cpp index b1db6933ac..d2408820ce 100644 --- a/src/server/game/Warden/WardenMac.cpp +++ b/src/server/game/Warden/WardenMac.cpp @@ -67,10 +67,11 @@ ClientWardenModule* WardenMac::GetModuleForClient() memcpy(mod->Key, Module_0DBBF209A27B1E279A9FEC5C168A15F7_Key, 16); // md5 hash - MD5_CTX ctx; - MD5_Init(&ctx); - MD5_Update(&ctx, mod->CompressedData, len); - MD5_Final((uint8*)&mod->Id, &ctx); + EVP_MD_CTX* ctx = EVP_MD_CTX_new(); + EVP_DigestInit_ex(ctx, EVP_md5(), NULL); + EVP_DigestUpdate(ctx, mod->CompressedData, len); + EVP_DigestFinal_ex(ctx, mod->CompressedData, &len); + EVP_MD_CTX_free(ctx); return mod; } diff --git a/src/server/game/Warden/WardenWin.cpp b/src/server/game/Warden/WardenWin.cpp index d2df3b69f2..1fd52e07ea 100644 --- a/src/server/game/Warden/WardenWin.cpp +++ b/src/server/game/Warden/WardenWin.cpp @@ -62,11 +62,11 @@ ClientWardenModule* WardenWin::GetModuleForClient() memcpy(mod->CompressedData, Module.Module, length); memcpy(mod->Key, Module.ModuleKey, 16); - // md5 hash - MD5_CTX ctx; - MD5_Init(&ctx); - MD5_Update(&ctx, mod->CompressedData, length); - MD5_Final((uint8*)&mod->Id, &ctx); + EVP_MD_CTX* ctx = EVP_MD_CTX_new(); + EVP_DigestInit_ex(ctx, EVP_md5(), NULL); + EVP_DigestUpdate(ctx, mod->CompressedData, length); + EVP_DigestFinal_ex(ctx, mod->CompressedData, &length); + EVP_MD_CTX_free(ctx); return mod; }