whoa/src/net/login/GruntLogin.hpp

32 lines
1.3 KiB
C++

#ifndef NET_LOGIN_GRUNT_LOGIN_HPP
#define NET_LOGIN_GRUNT_LOGIN_HPP
#include "net/grunt/Grunt.hpp"
#include "net/grunt/ClientResponse.hpp"
#include "net/login/Login.hpp"
class GruntLogin : public Login {
public:
// Member variables
uint8_t m_versionChallenge[16];
Grunt::ClientLink* m_clientLink = nullptr;
// Virtual member functions
virtual ~GruntLogin();
virtual bool Connected(const NETADDR& addr);
virtual void GetLogonMethod();
virtual void GetVersionProof(const uint8_t* versionChallenge);
virtual void SetPinInfo(bool enabled, uint32_t a3, const uint8_t* a4);
virtual void SetMatrixInfo(bool enabled, uint8_t a3, uint8_t a4, uint8_t a5, uint8_t a6, bool a7, uint8_t a8, uint64_t a9, const uint8_t* a10, uint32_t a11);
virtual void SetTokenInfo(bool enabled, uint8_t tokenRequired);
virtual void LogonResult(Grunt::Result result, const uint8_t* a3, uint32_t a4, uint16_t a5);
virtual LOGIN_STATE NextSecurityState(LOGIN_STATE state);
virtual void GetRealmList();
virtual void Logon(const char* a2, const char* a3);
virtual void ProveVersion(const uint8_t* versionChecksum);
virtual void Logoff();
virtual void Init(LoginResponse* loginResponse);
};
#endif