#ifndef __PACKETSTRUCT_SX_H__ #define __PACKETSTRUCT_SX_H__ #include #include #include #pragma pack(push,1) // ÀÌ ¸Þ¼¼Áö µÚ¿¡ SERVER_INFO ±¸Á¶Ã¼ Á¤º¸¸¦ ºÙ¿©¼­ º¸³¿ struct MSG_SX_CONNECTION_REQ_SERVER_INFO_SYN : public MSG_BASE { }; struct MSG_SX_CONNECTION_REQ_SERVER_INFO_ACK : public MSG_BASE { enum { _MAX_SERVERINFO_ARRAY_NUM = 100, }; DWORD m_dwNumberOfServerInfo; GLOBAL_SERVER_INFO_STRUCT m_ServerInfo[_MAX_SERVERINFO_ARRAY_NUM]; int GetPacketSize() { return ( (sizeof(MSG_SX_CONNECTION_REQ_SERVER_INFO_ACK) - sizeof(m_ServerInfo)) + ( sizeof(GLOBAL_SERVER_INFO_STRUCT) * m_dwNumberOfServerInfo ) ); } }; struct MSG_SX_CONNECTION_REQ_SERVER_INFO_CMD : public MSG_BASE { }; //struct MSG_SX_FUNCRESTRICT_RELOAD_REQ : public MSG_BASE //{ // MSG_SX_FUNCRESTRICT_RELOAD_REQ() { m_byCategory = SX_CONNECTION; m_byProtocol = SX_FUNCRESTRICT_RELOAD_REQ; } //}; // //struct MSG_SX_FUNCRESTRICT_RELOAD_ANS : public MSG_BASE //{ // enum { _MAX_FUNCRESTRICT_LIST_NUM = 100, }; // // MSG_SX_FUNCRESTRICT_RELOAD_ANS() { m_byCategory = SX_CONNECTION; m_byProtocol = SX_FUNCRESTRICT_RELOAD_ANS; } // // BYTE byRestrictNum; // STRUCT_RESTRICT_MASTER sRestrict[_MAX_FUNCRESTRICT_LIST_NUM]; // // int GetSize() // { // return ( sizeof(MSG_SX_FUNCRESTRICT_RELOAD_ANS) - ( sizeof(STRUCT_RESTRICT_MASTER) * (_MAX_FUNCRESTRICT_LIST_NUM - byRestrictNum) ) ); // } //}; // //struct MSG_SX_FUNCRESTRICT_RELOAD_NAK : public MSG_BASE //{ // MSG_SX_FUNCRESTRICT_RELOAD_NAK() { m_byCategory = SX_CONNECTION; m_byProtocol = SX_FUNCRESTRICT_RELOAD_NAK; } // // DWORD m_dwErrorCode; //}; #define PACKET_SX_OPEN( c, p ) \ struct MSG_##p : public MSG_BASE \ { MSG_##p() { m_byCategory = c; m_byProtocol = p; } #define PACKET_SX_CLOSE }; // #ifdef __WAVERIX_SOLAR_AUTH_SERVER_IMPLEMENTATION__ PACKET_SX_OPEN( SX_CONNECTION, SX_CONNECTION_DISCONNECT_CMD ) PACKET_SX_CLOSE PACKET_SX_OPEN( SX_CONNECTION, SX_CONNECTION_PHASE_SHIFT_CMD ) DWORD m_dwPHASE_SHIFT; PACKET_SX_CLOSE PACKET_SX_OPEN( SX_CONNECTION, SX_CONNECTION_BLOCK_CMD ) PACKET_SX_CLOSE #endif //__WAVERIX_SOLAR_AUTH_SERVER_IMPLEMENTATION__ // PACKET_SX_OPEN( SX_LOG, SX_LOG_SECURE_LOG_NTF ) enum eSIZE { MAXIPSTRINGLEN = 15, }; // BYTE m_byWorldID; BYTE m_byChannelID; BYTE m_byServerType; BYTE m_byCategory; __int64 m_LoggedTime; TCHAR m_pUserID[ID_MAX_LEN+1]; TCHAR m_pCharName[MAX_CHARNAME_LENGTH+1]; TCHAR m_pIP[MAXIPSTRINGLEN+1]; // WORD m_wLength; // with NULL? CHAR m_pStream[1]; // °¡º¯ ÆÐŶ¿ë Æ÷ÀÎÅÍ PACKET_SX_CLOSE #pragma pack(pop) #endif // __PACKETSTRUCT_SX_H__