TrinityCore
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Modules Pages
WardenWin.h
Go to the documentation of this file.
1 /*
2  * Copyright (C) 2008-2016 TrinityCore <http://www.trinitycore.org/>
3  * Copyright (C) 2005-2011 MaNGOS <http://getmangos.com/>
4  *
5  * This program is free software; you can redistribute it and/or modify it
6  * under the terms of the GNU General Public License as published by the
7  * Free Software Foundation; either version 2 of the License, or (at your
8  * option) any later version.
9  *
10  * This program is distributed in the hope that it will be useful, but WITHOUT
11  * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
12  * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for
13  * more details.
14  *
15  * You should have received a copy of the GNU General Public License along
16  * with this program. If not, see <http://www.gnu.org/licenses/>.
17  */
18 
19 #ifndef _WARDEN_WIN_H
20 #define _WARDEN_WIN_H
21 
22 #include <map>
23 #include "Cryptography/ARC4.h"
24 #include "Cryptography/BigNumber.h"
25 #include "ByteBuffer.h"
26 #include "Warden.h"
27 
28 #pragma pack(push, 1)
29 
31 {
40 
49 
58 };
59 
60 #pragma pack(pop)
61 
62 class WorldSession;
63 class Warden;
64 
66 {
67  public:
68  WardenWin();
69  ~WardenWin();
70 
71  void Init(WorldSession* session, BigNumber* K) override;
73  void InitializeModule() override;
74  void RequestHash() override;
75  void HandleHashResult(ByteBuffer &buff) override;
76  void RequestData() override;
77  void HandleData(ByteBuffer &buff) override;
78 
79  private:
81  std::list<uint16> _otherChecksTodo;
82  std::list<uint16> _memChecksTodo;
83  std::list<uint16> _currentChecks;
84 };
85 
86 #endif
Definition: BigNumber.h:28
uint8 Command2
Definition: WardenWin.h:41
uint8 Function2_set
Definition: WardenWin.h:48
Definition: ByteBuffer.h:70
virtual void HandleData(ByteBuffer &buff)=0
uint8 Unk1
Definition: WardenWin.h:35
virtual void RequestHash()=0
virtual void HandleHashResult(ByteBuffer &buff)=0
std::list< uint16 > _otherChecksTodo
Definition: WardenWin.h:81
uint8 Command1
Definition: WardenWin.h:32
virtual void RequestData()=0
std::list< uint16 > _memChecksTodo
Definition: WardenWin.h:82
uint16 Size3
Definition: WardenWin.h:51
uint32 Function3
Definition: WardenWin.h:56
virtual void Init(WorldSession *session, BigNumber *k)=0
std::list< uint16 > _currentChecks
Definition: WardenWin.h:83
uint32 CheckSumm2
Definition: WardenWin.h:43
uint8 Unk3
Definition: WardenWin.h:44
uint8 Unk4
Definition: WardenWin.h:45
uint8 Unk5
Definition: WardenWin.h:53
Definition: Warden.h:95
uint32 CheckSumm3
Definition: WardenWin.h:52
uint32_t uint32
Definition: Define.h:150
uint16_t uint16
Definition: Define.h:151
virtual ClientWardenModule * GetModuleForClient()=0
uint16 Size2
Definition: WardenWin.h:42
virtual void InitializeModule()=0
uint32 _serverTicks
Definition: WardenWin.h:80
uint8 Function3_set
Definition: WardenWin.h:57
uint8 Unk2
Definition: WardenWin.h:36
uint8 String_library1
Definition: WardenWin.h:38
uint16 Size1
Definition: WardenWin.h:33
Definition: WardenWin.h:65
#define TC_GAME_API
Definition: Define.h:134
uint8 String_library3
Definition: WardenWin.h:55
uint8 Unk6
Definition: WardenWin.h:54
uint8_t uint8
Definition: Define.h:152
uint32 Function2
Definition: WardenWin.h:47
uint8 Type
Definition: WardenWin.h:37
uint8 String_library2
Definition: WardenWin.h:46
uint8 Command3
Definition: WardenWin.h:50
Definition: WardenWin.h:30
Player session in the World.
Definition: WorldSession.h:882
uint32 CheckSumm1
Definition: WardenWin.h:34
uint32 Function1[4]
Definition: WardenWin.h:39
friend class WardenWin
Definition: Warden.h:97
Definition: Warden.h:85