250 lines
11 KiB
C++
250 lines
11 KiB
C++
#include "stdafx.h"
|
|
#include "Handler_CG.h"
|
|
|
|
#include <Object/WiseUser.h>
|
|
#include <Object/WiseCharacter.h>
|
|
#include <Object/ObjectManager.h>
|
|
|
|
#include "SolarDateTime.h"
|
|
|
|
|
|
#define HANDLER_CG_RECV_IMPL(fnName) \
|
|
void Handler_CG::On##fnName(ServerSession* pSession, WiseUser* pUser, sSIG_NETMSG* pSIG_NETMSG)
|
|
|
|
|
|
|
|
sPACKET_HANDLER_INFO* Handler_CG::GetHandlerInfo_SECURE()
|
|
{
|
|
static sPACKET_HANDLER_INFO s_pHandlerInfo[] =
|
|
{
|
|
#undef ADD_HANDLER_RECV_INFO_EOR
|
|
#undef ADD_HANDLER_RECV_INFO
|
|
#define ADD_HANDLER_RECV_INFO_EOR() { MAKEWORD(0, 0), PHASE_NOACTION, (PH_fnHandler)NULL }
|
|
#define ADD_HANDLER_RECV_INFO(c, p, accptablePHASE) \
|
|
{ MAKEWORD(c, p), (ePHASE_SHIFT)(accptablePHASE), (PH_fnHandler)&Handler_CG::On##p },
|
|
#ifdef __NA000630_070817_MOLA_5th_UPDATE
|
|
////¦¬¦¬¦¬¦¬¦¬¦¬¦¬¦¬¦¬¦¬¦¬¦¬¦¬¦¬¦¬¦¬¦¬¦¬¦¬¦¬¦¬¦¬¦¬¦¬¦¬¦¬¦¬¦¬¦¬¦¬¦¬¦¬¦¬¦¬¦¬¦¬¦¬¦¬¦´
|
|
//ADD_HANDLER_RECV_INFO(CG_SYNC, CG_SECURE_POLICY_PATTERN01_SIMPLEX_SNK_CMD, PHASE_UNLIMITED)
|
|
////ADD_HANDLER_RECV_INFO(CG_SYNC, CG_SECURE_POLICY_PATTERN01_SIMPLEX_SNK_ACK, PHASE_UNLIMITED)
|
|
//ADD_HANDLER_RECV_INFO(CG_SKILL, CG_SECURE_POLICY_PATTERN02_SIMPLEX_SNK_CMD, PHASE_UNLIMITED)
|
|
////ADD_HANDLER_RECV_INFO(CG_SKILL, CG_SECURE_POLICY_PATTERN02_SIMPLEX_SNK_ACK, PHASE_UNLIMITED)
|
|
//ADD_HANDLER_RECV_INFO(CG_ITEM, CG_SECURE_POLICY_PATTERN03_SIMPLEX_SNK_CMD, PHASE_UNLIMITED)
|
|
////ADD_HANDLER_RECV_INFO(CG_ITEM, CG_SECURE_POLICY_PATTERN03_SIMPLEX_SNK_ACK, PHASE_UNLIMITED)
|
|
//ADD_HANDLER_RECV_INFO(CG_TRADE, CG_SECURE_POLICY_PATTERN04_SIMPLEX_SNK_CMD, PHASE_UNLIMITED)
|
|
////ADD_HANDLER_RECV_INFO(CG_TRADE, CG_SECURE_POLICY_PATTERN04_SIMPLEX_SNK_ACK, PHASE_UNLIMITED)
|
|
//ADD_HANDLER_RECV_INFO(CG_VENDOR, CG_SECURE_POLICY_PATTERN05_QUERY_MOLA_CMD, PHASE_UNLIMITED)
|
|
////ADD_HANDLER_RECV_INFO(CG_VENDOR, CG_SECURE_POLICY_PATTERN05_QUERY_MOLA_ACK, PHASE_UNLIMITED)
|
|
//ADD_HANDLER_RECV_INFO(CG_WAREHOUSE, CG_SECURE_POLICY_PATTERN06_CONFIGURE_MOLA_CMD, PHASE_UNLIMITED)
|
|
////ADD_HANDLER_RECV_INFO(CG_WAREHOUSE, CG_SECURE_POLICY_PATTERN06_CONFIGURE_MOLA_ACK, PHASE_UNLIMITED)
|
|
//ADD_HANDLER_RECV_INFO(CG_PARTY, CG_SECURE_POLICY_PATTERN07_CONFIGURE_HEARTBEAT_CMD, PHASE_UNLIMITED)
|
|
////ADD_HANDLER_RECV_INFO(CG_PARTY, CG_SECURE_POLICY_PATTERN07_CONFIGURE_HEARTBEAT_ACK, PHASE_UNLIMITED)
|
|
//ADD_HANDLER_RECV_INFO(CG_STATUS, CG_SECURE_POLICY_PATTERN08_DUPLEX_SNK_KEY, PHASE_UNLIMITED)
|
|
////ADD_HANDLER_RECV_INFO(CG_STATUS, CG_SECURE_POLICY_PATTERN08_DUPLEX_SNK_ACK, PHASE_UNLIMITED)
|
|
//ADD_HANDLER_RECV_INFO(CG_STATUS, CG_SECURE_POLICY_PATTERN08_DUPLEX_SNK_CMD, PHASE_UNLIMITED)
|
|
ADD_HANDLER_RECV_INFO(CG_CONNECTION, CG_SECURE_QUERY_BUILTIN_CHK_CMD, PHASE_UNLIMITED)
|
|
////ADD_HANDLER_RECV_INFO(CG_CONNECTION, CG_SECURE_QUERY_BUILTIN_CHK_ACK, PHASE_UNLIMITED)
|
|
//ADD_HANDLER_RECV_INFO(CG_CONNECTION, CG_SECURE_QUERY_RESOURCE_CHK_T1_CMD, PHASE_UNLIMITED)
|
|
////ADD_HANDLER_RECV_INFO(CG_CONNECTION, CG_SECURE_QUERY_RESOURCE_CHK_T1_ACK, PHASE_UNLIMITED)
|
|
//ADD_HANDLER_RECV_INFO(CG_CHARINFO, CG_SECURE_QUERY_RESOURCE_CHK_T2_CMD, PHASE_UNLIMITED)
|
|
////ADD_HANDLER_RECV_INFO(CG_CHARINFO, CG_SECURE_QUERY_RESOURCE_CHK_T2_ACK, PHASE_UNLIMITED)
|
|
////ADD_HANDLER_RECV_INFO(CG_MAP, CG_SECURE_QUERY_RESOURCE_CHK_NTF1_SYN, PHASE_UNLIMITED)
|
|
//ADD_HANDLER_RECV_INFO(CG_BATTLE, CG_SECURE_QUERY_RESOURCE_CHK_T3_CMD, PHASE_UNLIMITED)
|
|
////ADD_HANDLER_RECV_INFO(CG_BATTLE, CG_SECURE_QUERY_RESOURCE_CHK_T3_ACK, PHASE_UNLIMITED)
|
|
//ADD_HANDLER_RECV_INFO(CG_STYLE, CG_SECURE_QUERY_RESOURCE_CHK_T4_CMD, PHASE_UNLIMITED)
|
|
////ADD_HANDLER_RECV_INFO(CG_STYLE, CG_SECURE_QUERY_RESOURCE_CHK_T4_ACK, PHASE_UNLIMITED)
|
|
////ADD_HANDLER_RECV_INFO(CG_STYLE, CG_SECURE_QUERY_RESOURCE_CHK_NTF2_SYN, PHASE_UNLIMITED)
|
|
#endif //__NA000630_070817_MOLA_5th_UPDATE
|
|
ADD_HANDLER_RECV_INFO_EOR(),
|
|
|
|
#undef ADD_HANDLER_RECV_INFO
|
|
#undef ADD_HANDLER_RECV_INFO_EOR
|
|
};
|
|
|
|
return s_pHandlerInfo;
|
|
};
|
|
|
|
|
|
#ifdef __NA000630_070817_MOLA_5th_UPDATE
|
|
|
|
//¦¬¦¬¦¬¦¬¦¬¦¬¦¬¦¬¦¬¦¬¦¬¦¬¦¬¦¬¦¬¦¬¦¬¦¬¦¬¦¬¦¬¦¬¦¬¦¬¦¬¦¬¦¬¦¬¦¬¦¬¦¬¦¬¦¬¦¬¦¬¦¬¦¬¦¬¦´
|
|
HANDLER_CG_RECV_IMPL(CG_SECURE_POLICY_PATTERN01_SIMPLEX_SNK_CMD)
|
|
{
|
|
DEBUGGING_CODE_L3("");
|
|
MSG_CG_SECURE_POLICY_PATTERN01_SIMPLEX_SNK_CMD& rRecvMsg = pSIG_NETMSG->MsgTypeOf<MSG_CG_SECURE_POLICY_PATTERN01_SIMPLEX_SNK_CMD>();
|
|
|
|
LogicFlowDelegator& rLOGIC = pUser->GetLogicFlow();
|
|
UserSessionMgr& rMGR = pUser->GetSessionMgr();
|
|
UserSessionMgr::SetActiveTransactionWiseUser(pUser);
|
|
|
|
ISecureWorkNode::OnMsgRecvSignal::SimplexSNK_T1(&rRecvMsg, sizeof(rRecvMsg));
|
|
}
|
|
|
|
//HANDLER_CG_RECV_IMPL(CG_SECURE_POLICY_PATTERN01_SIMPLEX_SNK_ACK)
|
|
HANDLER_CG_RECV_IMPL(CG_SECURE_POLICY_PATTERN02_SIMPLEX_SNK_CMD)
|
|
{
|
|
DEBUGGING_CODE_L3("");
|
|
MSG_CG_SECURE_POLICY_PATTERN02_SIMPLEX_SNK_CMD& rRecvMsg = pSIG_NETMSG->MsgTypeOf<MSG_CG_SECURE_POLICY_PATTERN02_SIMPLEX_SNK_CMD>();
|
|
LogicFlowDelegator& rLOGIC = pUser->GetLogicFlow();
|
|
UserSessionMgr& rMGR = pUser->GetSessionMgr();
|
|
UserSessionMgr::SetActiveTransactionWiseUser(pUser);
|
|
|
|
ISecureWorkNode::OnMsgRecvSignal::SimplexSNK_T2(&rRecvMsg, sizeof(rRecvMsg));
|
|
}
|
|
|
|
//HANDLER_CG_RECV_IMPL(CG_SECURE_POLICY_PATTERN02_SIMPLEX_SNK_ACK)
|
|
HANDLER_CG_RECV_IMPL(CG_SECURE_POLICY_PATTERN03_SIMPLEX_SNK_CMD)
|
|
{
|
|
DEBUGGING_CODE_L3("");
|
|
MSG_CG_SECURE_POLICY_PATTERN03_SIMPLEX_SNK_CMD& rRecvMsg = pSIG_NETMSG->MsgTypeOf<MSG_CG_SECURE_POLICY_PATTERN03_SIMPLEX_SNK_CMD>();
|
|
LogicFlowDelegator& rLOGIC = pUser->GetLogicFlow();
|
|
UserSessionMgr& rMGR = pUser->GetSessionMgr();
|
|
UserSessionMgr::SetActiveTransactionWiseUser(pUser);
|
|
|
|
ISecureWorkNode::OnMsgRecvSignal::SimplexSNK_T3(&rRecvMsg, sizeof(rRecvMsg));
|
|
}
|
|
|
|
//HANDLER_CG_RECV_IMPL(CG_SECURE_POLICY_PATTERN03_SIMPLEX_SNK_ACK)
|
|
HANDLER_CG_RECV_IMPL(CG_SECURE_POLICY_PATTERN04_SIMPLEX_SNK_CMD)
|
|
{
|
|
DEBUGGING_CODE_L3("");
|
|
MSG_CG_SECURE_POLICY_PATTERN04_SIMPLEX_SNK_CMD& rRecvMsg = pSIG_NETMSG->MsgTypeOf<MSG_CG_SECURE_POLICY_PATTERN04_SIMPLEX_SNK_CMD>();
|
|
LogicFlowDelegator& rLOGIC = pUser->GetLogicFlow();
|
|
UserSessionMgr& rMGR = pUser->GetSessionMgr();
|
|
UserSessionMgr::SetActiveTransactionWiseUser(pUser);
|
|
|
|
ISecureWorkNode::OnMsgRecvSignal::SimplexSNK_T4(&rRecvMsg, sizeof(rRecvMsg));
|
|
}
|
|
|
|
//HANDLER_CG_RECV_IMPL(CG_SECURE_POLICY_PATTERN04_SIMPLEX_SNK_ACK)
|
|
HANDLER_CG_RECV_IMPL(CG_SECURE_POLICY_PATTERN05_QUERY_MOLA_CMD)
|
|
{
|
|
DEBUGGING_CODE_L3("");
|
|
MSG_CG_SECURE_POLICY_PATTERN05_QUERY_MOLA_CMD& rRecvMsg = pSIG_NETMSG->MsgTypeOf<MSG_CG_SECURE_POLICY_PATTERN05_QUERY_MOLA_CMD>();
|
|
LogicFlowDelegator& rLOGIC = pUser->GetLogicFlow();
|
|
UserSessionMgr& rMGR = pUser->GetSessionMgr();
|
|
UserSessionMgr::SetActiveTransactionWiseUser(pUser);
|
|
|
|
ISecureWorkNode::OnMsgRecvSignal::MOLA_Query(&rRecvMsg, sizeof(rRecvMsg));
|
|
}
|
|
|
|
//HANDLER_CG_RECV_IMPL(CG_SECURE_POLICY_PATTERN05_QUERY_MOLA_ACK)
|
|
HANDLER_CG_RECV_IMPL(CG_SECURE_POLICY_PATTERN06_CONFIGURE_MOLA_CMD)
|
|
{
|
|
DEBUGGING_CODE_L3("");
|
|
MSG_CG_SECURE_POLICY_PATTERN06_CONFIGURE_MOLA_CMD& rRecvMsg = pSIG_NETMSG->MsgTypeOf<MSG_CG_SECURE_POLICY_PATTERN06_CONFIGURE_MOLA_CMD>();
|
|
LogicFlowDelegator& rLOGIC = pUser->GetLogicFlow();
|
|
UserSessionMgr& rMGR = pUser->GetSessionMgr();
|
|
UserSessionMgr::SetActiveTransactionWiseUser(pUser);
|
|
|
|
ISecureWorkNode::OnMsgRecvSignal::MOLA_Configure(&rRecvMsg, sizeof(rRecvMsg));
|
|
}
|
|
|
|
//HANDLER_CG_RECV_IMPL(CG_SECURE_POLICY_PATTERN06_CONFIGURE_MOLA_ACK)
|
|
HANDLER_CG_RECV_IMPL(CG_SECURE_POLICY_PATTERN07_CONFIGURE_HEARTBEAT_CMD)
|
|
{
|
|
DEBUGGING_CODE_L3("");
|
|
MSG_CG_SECURE_POLICY_PATTERN07_CONFIGURE_HEARTBEAT_CMD& rRecvMsg = pSIG_NETMSG->MsgTypeOf<MSG_CG_SECURE_POLICY_PATTERN07_CONFIGURE_HEARTBEAT_CMD>();
|
|
LogicFlowDelegator& rLOGIC = pUser->GetLogicFlow();
|
|
UserSessionMgr& rMGR = pUser->GetSessionMgr();
|
|
UserSessionMgr::SetActiveTransactionWiseUser(pUser);
|
|
|
|
ISecureWorkNode::OnMsgRecvSignal::MOLA_Configure(&rRecvMsg, sizeof(rRecvMsg));
|
|
}
|
|
|
|
//HANDLER_CG_RECV_IMPL(CG_SECURE_POLICY_PATTERN07_CONFIGURE_HEARTBEAT_ACK)
|
|
HANDLER_CG_RECV_IMPL(CG_SECURE_POLICY_PATTERN08_DUPLEX_SNK_KEY)
|
|
{
|
|
DEBUGGING_CODE_L3("");
|
|
MSG_CG_SECURE_POLICY_PATTERN08_DUPLEX_SNK_KEY& rRecvMsg = pSIG_NETMSG->MsgTypeOf<MSG_CG_SECURE_POLICY_PATTERN08_DUPLEX_SNK_KEY>();
|
|
LogicFlowDelegator& rLOGIC = pUser->GetLogicFlow();
|
|
UserSessionMgr& rMGR = pUser->GetSessionMgr();
|
|
UserSessionMgr::SetActiveTransactionWiseUser(pUser);
|
|
|
|
ISecureWorkNode::OnMsgRecvSignal::DuplexSNK_T1(&rRecvMsg, sizeof(rRecvMsg));
|
|
}
|
|
|
|
//HANDLER_CG_RECV_IMPL(CG_SECURE_POLICY_PATTERN08_DUPLEX_SNK_ACK)
|
|
HANDLER_CG_RECV_IMPL(CG_SECURE_POLICY_PATTERN08_DUPLEX_SNK_CMD)
|
|
{
|
|
DEBUGGING_CODE_L3("");
|
|
MSG_CG_SECURE_POLICY_PATTERN08_DUPLEX_SNK_CMD& rRecvMsg = pSIG_NETMSG->MsgTypeOf<MSG_CG_SECURE_POLICY_PATTERN08_DUPLEX_SNK_CMD>();
|
|
LogicFlowDelegator& rLOGIC = pUser->GetLogicFlow();
|
|
UserSessionMgr& rMGR = pUser->GetSessionMgr();
|
|
UserSessionMgr::SetActiveTransactionWiseUser(pUser);
|
|
|
|
ISecureWorkNode::OnMsgRecvSignal::DuplexSNK_T1(&rRecvMsg, sizeof(rRecvMsg));
|
|
}
|
|
|
|
HANDLER_CG_RECV_IMPL(CG_SECURE_QUERY_BUILTIN_CHK_CMD)
|
|
{
|
|
DEBUGGING_CODE_L3("");
|
|
MSG_CG_SECURE_QUERY_BUILTIN_CHK_CMD& rRecvMsg = pSIG_NETMSG->MsgTypeOf<MSG_CG_SECURE_QUERY_BUILTIN_CHK_CMD>();
|
|
LogicFlowDelegator& rLOGIC = pUser->GetLogicFlow();
|
|
UserSessionMgr& rMGR = pUser->GetSessionMgr();
|
|
UserSessionMgr::SetActiveTransactionWiseUser(pUser);
|
|
|
|
ISecureWorkNode::OnMsgRecvSignal::BuiltinCodeCheck(&rRecvMsg, sizeof(rRecvMsg));
|
|
BYTE* pSendingMsg;
|
|
WORD rwSize;
|
|
if(ISecureWorkNode::OnMsgSend::BuiltinCodeCheck(pSendingMsg, rwSize))
|
|
{
|
|
rMGR.SendPacket(AGENT_SESSION, (MSG_BASE*)pSendingMsg, rwSize);
|
|
}
|
|
}
|
|
|
|
//HANDLER_CG_RECV_IMPL(CG_SECURE_QUERY_BUILTIN_CHK_ACK)
|
|
|
|
HANDLER_CG_RECV_IMPL(CG_SECURE_QUERY_RESOURCE_CHK_T1_CMD)
|
|
{
|
|
DEBUGGING_CODE_L3("");
|
|
MSG_CG_SECURE_QUERY_RESOURCE_CHK_T1_CMD& rRecvMsg = pSIG_NETMSG->MsgTypeOf<MSG_CG_SECURE_QUERY_RESOURCE_CHK_T1_CMD>();
|
|
LogicFlowDelegator& rLOGIC = pUser->GetLogicFlow();
|
|
UserSessionMgr& rMGR = pUser->GetSessionMgr();
|
|
UserSessionMgr::SetActiveTransactionWiseUser(pUser);
|
|
|
|
ISecureWorkNode::OnMsgRecvSignal::ResourceCheckT1(&rRecvMsg, sizeof(rRecvMsg));
|
|
}
|
|
|
|
//HANDLER_CG_RECV_IMPL(CG_SECURE_QUERY_RESOURCE_CHK_T1_ACK)
|
|
HANDLER_CG_RECV_IMPL(CG_SECURE_QUERY_RESOURCE_CHK_T2_CMD)
|
|
{
|
|
DEBUGGING_CODE_L3("");
|
|
MSG_CG_SECURE_QUERY_RESOURCE_CHK_T2_CMD& rRecvMsg = pSIG_NETMSG->MsgTypeOf<MSG_CG_SECURE_QUERY_RESOURCE_CHK_T2_CMD>();
|
|
LogicFlowDelegator& rLOGIC = pUser->GetLogicFlow();
|
|
UserSessionMgr& rMGR = pUser->GetSessionMgr();
|
|
UserSessionMgr::SetActiveTransactionWiseUser(pUser);
|
|
|
|
ISecureWorkNode::OnMsgRecvSignal::ResourceCheckT2(&rRecvMsg, sizeof(rRecvMsg));
|
|
}
|
|
|
|
//HANDLER_CG_RECV_IMPL(CG_SECURE_QUERY_RESOURCE_CHK_T2_ACK)
|
|
//HANDLER_CG_RECV_IMPL(CG_SECURE_QUERY_RESOURCE_CHK_NTF1_SYN)
|
|
HANDLER_CG_RECV_IMPL(CG_SECURE_QUERY_RESOURCE_CHK_T3_CMD)
|
|
{
|
|
DEBUGGING_CODE_L3("");
|
|
MSG_CG_SECURE_QUERY_RESOURCE_CHK_T3_CMD& rRecvMsg = pSIG_NETMSG->MsgTypeOf<MSG_CG_SECURE_QUERY_RESOURCE_CHK_T3_CMD>();
|
|
LogicFlowDelegator& rLOGIC = pUser->GetLogicFlow();
|
|
UserSessionMgr& rMGR = pUser->GetSessionMgr();
|
|
UserSessionMgr::SetActiveTransactionWiseUser(pUser);
|
|
|
|
ISecureWorkNode::OnMsgRecvSignal::ResourceCheckT3(&rRecvMsg, sizeof(rRecvMsg));
|
|
}
|
|
|
|
//HANDLER_CG_RECV_IMPL(CG_SECURE_QUERY_RESOURCE_CHK_T3_ACK)
|
|
HANDLER_CG_RECV_IMPL(CG_SECURE_QUERY_RESOURCE_CHK_T4_CMD)
|
|
{
|
|
DEBUGGING_CODE_L3("");
|
|
MSG_CG_SECURE_QUERY_RESOURCE_CHK_T4_CMD& rRecvMsg = pSIG_NETMSG->MsgTypeOf<MSG_CG_SECURE_QUERY_RESOURCE_CHK_T4_CMD>();
|
|
LogicFlowDelegator& rLOGIC = pUser->GetLogicFlow();
|
|
UserSessionMgr& rMGR = pUser->GetSessionMgr();
|
|
UserSessionMgr::SetActiveTransactionWiseUser(pUser);
|
|
|
|
ISecureWorkNode::OnMsgRecvSignal::ResourceCheckT4(&rRecvMsg, sizeof(rRecvMsg));
|
|
}
|
|
|
|
//HANDLER_CG_RECV_IMPL(CG_SECURE_QUERY_RESOURCE_CHK_T4_ACK)
|
|
//HANDLER_CG_RECV_IMPL(CG_SECURE_QUERY_RESOURCE_CHK_NTF2_SYN)
|
|
|
|
#endif //__NA000630_070817_MOLA_5th_UPDATE
|
|
|