Skip to content

Commit af06a32

Browse files
committed
modify:forward list and bind protocol error process way
1 parent 52d44b6 commit af06a32

File tree

1 file changed

+8
-14
lines changed

1 file changed

+8
-14
lines changed

XEngine_Source/XEngine_ServiceApp/XEngine_ForwardTask.cpp

Lines changed: 8 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -97,20 +97,14 @@ bool XEngine_Forward_Handle(LPCXSTR lpszClientAddr, LPCXSTR lpszMsgBuffer, int n
9797
int nListCount = 0;
9898
SESSION_FORWARD** ppSt_ListUser;
9999

100+
pSt_ProtocolHdr->wReserve = 0;
101+
pSt_ProtocolHdr->unPacketSize = 0;
100102
pSt_ProtocolHdr->unOperatorCode = XENGINE_COMMUNICATION_PROTOCOL_OPERATOR_CODE_FORWARD_LISTREP;
101-
if (ModuleSession_Forward_List(&ppSt_ListUser, &nListCount, lpszClientAddr))
102-
{
103-
ModuleProtocol_Packet_ForwardList(tszSDBuffer, &nSDLen, pSt_ProtocolHdr, &ppSt_ListUser, nListCount);
104-
BaseLib_OperatorMemory_Free((XPPPMEM)&ppSt_ListUser, nListCount);
105-
XEngine_Network_Send(lpszClientAddr, tszSDBuffer, nSDLen, XENGINE_CLIENT_NETTYPE_FORWARD);
106-
XLOG_PRINT(xhLog, XENGINE_HELPCOMPONENTS_XLOG_IN_LOGLEVEL_INFO, _X("Forward客户端:%s,请求可用转发列表成功"), lpszClientAddr);
107-
}
108-
else
109-
{
110-
pSt_ProtocolHdr->unPacketSize = 0;
111-
XEngine_Network_Send(lpszClientAddr, (LPCXSTR)pSt_ProtocolHdr, sizeof(XENGINE_PROTOCOLHDR), XENGINE_CLIENT_NETTYPE_FORWARD);
112-
XLOG_PRINT(xhLog, XENGINE_HELPCOMPONENTS_XLOG_IN_LOGLEVEL_INFO, _X("Forward客户端:%s,请求可用转发列表失败,错误;%lx"), lpszClientAddr, ModuleSession_GetLastError());
113-
}
103+
ModuleSession_Forward_List(&ppSt_ListUser, &nListCount, lpszClientAddr);
104+
ModuleProtocol_Packet_ForwardList(tszSDBuffer, &nSDLen, pSt_ProtocolHdr, &ppSt_ListUser, nListCount);
105+
BaseLib_OperatorMemory_Free((XPPPMEM)&ppSt_ListUser, nListCount);
106+
XEngine_Network_Send(lpszClientAddr, tszSDBuffer, nSDLen, XENGINE_CLIENT_NETTYPE_FORWARD);
107+
XLOG_PRINT(xhLog, XENGINE_HELPCOMPONENTS_XLOG_IN_LOGLEVEL_INFO, _X("Forward客户端:%s,请求可用转发列表成功"), lpszClientAddr);
114108
}
115109
else if (XENGINE_COMMUNICATION_PROTOCOL_OPERATOR_CODE_FORWARD_BINDREQ == pSt_ProtocolHdr->unOperatorCode)
116110
{
@@ -123,7 +117,7 @@ bool XEngine_Forward_Handle(LPCXSTR lpszClientAddr, LPCXSTR lpszMsgBuffer, int n
123117
ModuleProtocol_Parse_ForwardBind(lpszMsgBuffer, nMsgLen, tszSrcAddr, tszDstAddr);
124118
if (!ModuleSession_Forward_Bind(lpszClientAddr, tszDstAddr))
125119
{
126-
pSt_ProtocolHdr->wReserve = 401;
120+
pSt_ProtocolHdr->wReserve = 404;
127121
pSt_ProtocolHdr->unPacketSize = 0;
128122
pSt_ProtocolHdr->unOperatorCode = XENGINE_COMMUNICATION_PROTOCOL_OPERATOR_CODE_FORWARD_BINDREP;
129123
XEngine_Network_Send(lpszClientAddr, (LPCXSTR)pSt_ProtocolHdr, sizeof(XENGINE_PROTOCOLHDR), XENGINE_CLIENT_NETTYPE_FORWARD);

0 commit comments

Comments
 (0)