#ifndef _GAMA_RYL_MASTER_PASSWORD_H_ #define _GAMA_RYL_MASTER_PASSWORD_H_ #include #include #include // forward decl. struct sockaddr_in; class CMasterPassword : public CStaticSingleton { public: enum { // edith 2008.03.17 ID,PASS ±æÀÌÁ¶Á¤ MAX_MASTERPASS = 36 }; CMasterPassword(); ~CMasterPassword(); bool LoadMasterPassword(const char* szTextFileName = "./Script/Server/masterpass.txt"); bool CheckMasterPassword(const char* szUserID, const char* szPassword, const sockaddr_in& peerAddr); private: void Init(); void Process(const char* szCommand, const char* szValue); typedef CCSLock PasswordLock; typedef std::vector AddressList; PasswordLock m_Lock; CACHE_PAD(PasswordLockPad, sizeof(PasswordLock)); AddressList m_AddressList; char m_szMasterPassword[MAX_MASTERPASS]; }; #endif