@@ -127,7 +127,31 @@ BOOL XEngine_Task_TCPP2xp(XENGINE_PROTOCOLHDR* pSt_ProtocolHdr, LPCTSTR lpszClie
127127 }
128128 else
129129 {
130+ // 公网下所有列表
131+ int nListCount = 0 ;
132+ TCHAR** ppszClientList;
133+ list<XENGINE_P2XPPEER_PROTOCOL> stl_ListClient;
134+ if (P2XPPeer_Manage_GetLList (tszPubAddr, &ppszClientList, &nListCount))
135+ {
136+ for (int i = 0 ; i < nListCount; i++)
137+ {
138+ int nLanCount = 0 ;
139+ XENGINE_P2XPPEER_PROTOCOL** ppSt_ListClients;
130140
141+ if (P2XPPeer_Manage_GetLan (tszPubAddr, ppszClientList[i], &ppSt_ListClients, &nLanCount))
142+ {
143+ for (int j = 0 ; j < nLanCount; j++)
144+ {
145+ stl_ListClient.push_back (*ppSt_ListClients[j]);
146+ }
147+ BaseLib_OperatorMemory_Free ((XPPPMEM)&ppSt_ListClients, nLanCount);
148+ }
149+ }
150+ BaseLib_OperatorMemory_Free ((XPPPMEM)&ppszClientList, nListCount);
151+ }
152+ P2XPProtocol_Packet_WLan (pSt_ProtocolHdr, &stl_ListClient, tszSDBuffer, &nSDLen);
153+ XEngine_Net_SendMsg (lpszClientAddr, tszSDBuffer, nSDLen, STORAGE_NETTYPE_TCPP2XP);
154+ XLOG_PRINT (xhLog, XENGINE_HELPCOMPONENTS_XLOG_IN_LOGLEVEL_INFO, _T (" 客户端:%s,请求同步局域网列表成功,公有地址:%s,私有地址:%s" ), lpszClientAddr, tszPubAddr, tszPriAddr);
131155 }
132156 }
133157 else if (XENGINE_COMMUNICATION_PROTOCOL_OPERATOR_CODE_P2XP_REQCONNECT == pSt_ProtocolHdr->unOperatorCode )
@@ -192,6 +216,13 @@ BOOL XEngine_Task_TCPP2xp(XENGINE_PROTOCOLHDR* pSt_ProtocolHdr, LPCTSTR lpszClie
192216 XEngine_Net_SendMsg (lpszClientAddr, tszSDBuffer, nSDLen, STORAGE_NETTYPE_TCPP2XP);
193217 XLOG_PRINT (xhLog, XENGINE_HELPCOMPONENTS_XLOG_IN_LOGLEVEL_INFO, _T (" 客户端:%s,请求查询用户:%s 成功" ), lpszClientAddr, tszUserName);
194218 }
219+ else if (XENGINE_COMMUNICATION_PROTOCOL_OPERATOR_CODE_STORAGE_REQQUERY == pSt_ProtocolHdr->unOperatorCode )
220+ {
221+ TCHAR tszFileHash[MAX_PATH];
222+ memset (tszFileHash, ' \0 ' , MAX_PATH);
223+
224+ XStorageProtocol_Core_REQQueryFile (lpszMsgBuffer, NULL , NULL , NULL , tszFileHash);
225+ }
195226 else
196227 {
197228 XLOG_PRINT (xhLog, XENGINE_HELPCOMPONENTS_XLOG_IN_LOGLEVEL_WARN, _T (" 客户端:%s,请求了一条未知的子协议:%lX" ), lpszClientAddr, pSt_ProtocolHdr->unOperatorCode );
0 commit comments