aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorjackpoz <giacomopoz@gmail.com>2014-05-12 22:40:55 +0200
committerjackpoz <giacomopoz@gmail.com>2014-05-12 22:40:55 +0200
commitdb2593f41d75fb9b832f240313522d50d95f4618 (patch)
treeb11cd482ffd538c73b2d8a95e3be5538860a9dd4
parentb17e3246fe769e6dc388612d5764150a184aef07 (diff)
Core/Arena: Fix exploit in arena team
Fix exploit that allowed anyone to add a target Player to any arena team.
-rw-r--r--src/server/game/Handlers/ArenaTeamHandler.cpp6
1 files changed, 6 insertions, 0 deletions
diff --git a/src/server/game/Handlers/ArenaTeamHandler.cpp b/src/server/game/Handlers/ArenaTeamHandler.cpp
index 632bd02def0..3bb3edac500 100644
--- a/src/server/game/Handlers/ArenaTeamHandler.cpp
+++ b/src/server/game/Handlers/ArenaTeamHandler.cpp
@@ -121,6 +121,12 @@ void WorldSession::HandleArenaTeamInviteOpcode(WorldPacket& recvData)
return;
}
+ if (GetPlayer()->GetArenaTeamId(arenaTeam->GetSlot()) != arenaTeamId)
+ {
+ SendArenaTeamCommandResult(ERR_ARENA_TEAM_CREATE_S, "", "", ERR_ARENA_TEAM_PERMISSIONS);
+ return;
+ }
+
// OK result but don't send invite
if (player->GetSocial()->HasIgnore(GetPlayer()->GetGUIDLow()))
return;