diff options
| author | Spp <spp@jorge.gr> | 2012-11-16 08:51:15 +0100 |
|---|---|---|
| committer | Spp <spp@jorge.gr> | 2012-11-16 08:51:15 +0100 |
| commit | a0c8193ee7be188a0951ce6ee0bdafb1dee41e71 (patch) | |
| tree | 1020225dc168a154a9d788df950780b056e71910 /src/server/game/Server | |
| parent | f13e57d9edb8664be746cf17d2ea36e24eca863e (diff) | |
| parent | d13ca54ecc991a7312f1584bdfdec32f8e6a0ee3 (diff) | |
Merge branch 'master' into 4.3.4
Conflicts:
src/server/game/Handlers/BattleGroundHandler.cpp
Diffstat (limited to 'src/server/game/Server')
| -rw-r--r-- | src/server/game/Server/WorldSocket.cpp | 11 |
1 files changed, 11 insertions, 0 deletions
diff --git a/src/server/game/Server/WorldSocket.cpp b/src/server/game/Server/WorldSocket.cpp index 38c6ed6276e..5c71c9e503c 100644 --- a/src/server/game/Server/WorldSocket.cpp +++ b/src/server/game/Server/WorldSocket.cpp @@ -918,6 +918,17 @@ int WorldSocket::HandleAuthSession(WorldPacket& recvPacket) uint32 recruiter = fields[9].GetUInt32(); std::string os = fields[10].GetString(); + // Must be done before WorldSession is created + if (sWorld->getBoolConfig(CONFIG_WARDEN_ENABLED) && os != "Win" && os != "OSX") + { + packet.Initialize(SMSG_AUTH_RESPONSE, 1); + packet << uint8(AUTH_REJECT); + SendPacket(packet); + + sLog->outError(LOG_FILTER_NETWORKIO, "WorldSocket::HandleAuthSession: Client %s attempted to log in using invalid client OS (%s).", GetRemoteAddress().c_str(), os.c_str()); + return -1; + } + // Checks gmlevel per Realm stmt = LoginDatabase.GetPreparedStatement(LOGIN_GET_GMLEVEL_BY_REALMID); |
