Skip to content

Commit 03d8209

Browse files
committed
modify:detach auth and proxy configure
modify:download and upload and center support both verification switch
1 parent f6bc554 commit 03d8209

File tree

7 files changed

+54
-46
lines changed

7 files changed

+54
-46
lines changed

XEngine_Source/StorageModule_Config/Config_Define.h

Lines changed: 13 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -63,21 +63,21 @@ typedef struct tag_XEngine_ServerConfig
6363
bool bUPHash;
6464
int nHashMode;
6565
}st_XStorage;
66+
struct
67+
{
68+
bool bUPAuth;
69+
bool bDLAuth;
70+
bool bCHAuth;
71+
XCHAR tszUserList[MAX_PATH];
72+
}st_XAuth;
6673
struct
6774
{
68-
struct
69-
{
70-
bool bAuth;
71-
XCHAR tszAuthProxy[MAX_PATH];
72-
XCHAR tszUserList[MAX_PATH];
73-
}st_XProxyAuth;
74-
struct
75-
{
76-
bool bUPPass;
77-
bool bDLPass;
78-
XCHAR tszUPPass[MAX_PATH];
79-
XCHAR tszDLPass[MAX_PATH];
80-
}st_XProxyPass;
75+
bool bUPPass;
76+
bool bDLPass;
77+
bool bAuthPass;
78+
XCHAR tszUPPass[MAX_PATH];
79+
XCHAR tszDLPass[MAX_PATH];
80+
XCHAR tszAuthPass[MAX_PATH];
8181
}st_XProxy;
8282
struct
8383
{

XEngine_Source/StorageModule_Config/Config_Error.h

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -24,6 +24,7 @@
2424
#define ERROR_XENGINE_BLOGIC_CONFIG_JSON_XPROXY 0x0020009
2525
#define ERROR_XENGINE_BLOGIC_CONFIG_JSON_P2XP 0x002000A
2626
#define ERROR_XENGINE_BLOGIC_CONFIG_JSON_CERT 0x002000B
27+
#define ERROR_XENGINE_BLOGIC_CONFIG_JSON_XAUTH 0x002000C
2728

2829
#define ERROR_XENGINE_BLOGIC_CONFIG_JSON_LBDISTRIBUTED 0x0020010
2930
#define ERROR_XENGINE_BLOGIC_CONFIG_JSON_LBLOCATION 0x0020011

XEngine_Source/StorageModule_Config/Config_Json/Config_Json.cpp

Lines changed: 19 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -150,24 +150,31 @@ bool CConfig_Json::Config_Json_File(LPCXSTR lpszConfigFile, XENGINE_SERVERCONFIG
150150
pSt_ServerConfig->st_XStorage.bUPHash = st_JsonXStorage["bUPHash"].asInt();
151151
pSt_ServerConfig->st_XStorage.bResumable = st_JsonXStorage["bResumable"].asInt();
152152

153-
if (st_JsonRoot["XProxy"].empty() || (2 != st_JsonRoot["XProxy"].size()))
153+
if (st_JsonRoot["XProxy"].empty() || (6 != st_JsonRoot["XProxy"].size()))
154154
{
155155
Config_IsErrorOccur = true;
156156
Config_dwErrorCode = ERROR_XENGINE_BLOGIC_CONFIG_JSON_XPROXY;
157157
return false;
158158
}
159159
Json::Value st_JsonXProxy = st_JsonRoot["XProxy"];
160-
Json::Value st_JsonXProxyAuth = st_JsonXProxy["XProxyAuth"];
161-
Json::Value st_JsonXProxyPass = st_JsonXProxy["XProxyPass"];
162-
163-
pSt_ServerConfig->st_XProxy.st_XProxyAuth.bAuth = st_JsonXProxyAuth["bAuth"].asInt();
164-
_tcsxcpy(pSt_ServerConfig->st_XProxy.st_XProxyAuth.tszAuthProxy, st_JsonXProxyAuth["tszAuthProxy"].asCString());
165-
_tcsxcpy(pSt_ServerConfig->st_XProxy.st_XProxyAuth.tszUserList, st_JsonXProxyAuth["tszUserList"].asCString());
166-
167-
pSt_ServerConfig->st_XProxy.st_XProxyPass.bDLPass = st_JsonXProxyPass["bDLGet"].asInt();
168-
pSt_ServerConfig->st_XProxy.st_XProxyPass.bUPPass = st_JsonXProxyPass["bUPGet"].asInt();
169-
_tcsxcpy(pSt_ServerConfig->st_XProxy.st_XProxyPass.tszDLPass, st_JsonXProxyPass["tszDLPass"].asCString());
170-
_tcsxcpy(pSt_ServerConfig->st_XProxy.st_XProxyPass.tszUPPass, st_JsonXProxyPass["tszUPPass"].asCString());
160+
pSt_ServerConfig->st_XProxy.bDLPass = st_JsonXProxy["bDLPass"].asBool();
161+
pSt_ServerConfig->st_XProxy.bUPPass = st_JsonXProxy["bUPPass"].asBool();
162+
pSt_ServerConfig->st_XProxy.bAuthPass = st_JsonXProxy["bAuthPass"].asBool();
163+
_tcsxcpy(pSt_ServerConfig->st_XProxy.tszDLPass, st_JsonXProxy["tszDLPass"].asCString());
164+
_tcsxcpy(pSt_ServerConfig->st_XProxy.tszUPPass, st_JsonXProxy["tszUPPass"].asCString());
165+
_tcsxcpy(pSt_ServerConfig->st_XProxy.tszAuthPass, st_JsonXProxy["tszAuthPass"].asCString());
166+
167+
if (st_JsonRoot["XAuth"].empty() || (4 != st_JsonRoot["XAuth"].size()))
168+
{
169+
Config_IsErrorOccur = true;
170+
Config_dwErrorCode = ERROR_XENGINE_BLOGIC_CONFIG_JSON_XAUTH;
171+
return false;
172+
}
173+
Json::Value st_JsonXAuth = st_JsonRoot["XAuth"];
174+
pSt_ServerConfig->st_XAuth.bUPAuth = st_JsonXAuth["bUPAuth"].asInt();
175+
pSt_ServerConfig->st_XAuth.bDLAuth = st_JsonXAuth["bDLAuth"].asInt();
176+
pSt_ServerConfig->st_XAuth.bCHAuth = st_JsonXAuth["bCHAuth"].asInt();
177+
_tcsxcpy(pSt_ServerConfig->st_XAuth.tszUserList, st_JsonXAuth["tszUserList"].asCString());
171178

172179
if (st_JsonRoot["XLimit"].empty() || (5 != st_JsonRoot["XLimit"].size()))
173180
{

XEngine_Source/XEngine_StorageApp/StorageApp_Center.cpp

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -58,7 +58,7 @@ bool XEngine_Task_HttpCenter(LPCXSTR lpszClientAddr, LPCXSTR lpszMsgBuffer, int
5858
LPCXSTR lpszMethodPost = _X("POST");
5959
LPCXSTR lpszMethodOption = _X("OPTIONS");
6060

61-
if (st_ServiceCfg.st_XProxy.st_XProxyAuth.bAuth)
61+
if (st_ServiceCfg.st_XAuth.bCHAuth)
6262
{
6363
XCHAR tszUserName[64];
6464
XCHAR tszUserPass[64];
@@ -76,14 +76,14 @@ bool XEngine_Task_HttpCenter(LPCXSTR lpszClientAddr, LPCXSTR lpszMsgBuffer, int
7676
XLOG_PRINT(xhLog, XENGINE_HELPCOMPONENTS_XLOG_IN_LOGLEVEL_ERROR, _X("业务客户端:%s,用户验证失败,错误:%lX"), lpszClientAddr, StorageHelp_GetLastError());
7777
return false;
7878
}
79-
if (_tcsxlen(st_ServiceCfg.st_XProxy.st_XProxyAuth.tszAuthProxy) > 0)
79+
if (st_ServiceCfg.st_XProxy.bAuthPass)
8080
{
8181
int nBLen = 0;
8282
int nResponseCode = 0;
8383
XCHAR* ptszBody = NULL;
8484

8585
Protocol_StoragePacket_BasicAuth(pSt_HTTPParam->tszHttpMethod, pSt_HTTPParam->tszHttpUri, lpszClientAddr, tszUserName, tszUserPass, tszSDBuffer, &nSDLen);
86-
APIClient_Http_Request(_X("POST"), st_ServiceCfg.st_XProxy.st_XProxyAuth.tszAuthProxy, tszSDBuffer, &nResponseCode, &ptszBody, &nBLen);
86+
APIClient_Http_Request(_X("POST"), st_ServiceCfg.st_XProxy.tszAuthPass, tszSDBuffer, &nResponseCode, &ptszBody, &nBLen);
8787
if (200 != nResponseCode)
8888
{
8989
st_HDRParam.bIsClose = true;
@@ -95,7 +95,7 @@ bool XEngine_Task_HttpCenter(LPCXSTR lpszClientAddr, LPCXSTR lpszMsgBuffer, int
9595
XLOG_PRINT(xhLog, XENGINE_HELPCOMPONENTS_XLOG_IN_LOGLEVEL_ERROR, _X("业务客户端:%s,用户验证失败,用户名:%s,密码:%s,错误码:%d,错误内容:%s"), tszUserName, tszUserPass, tszUserPass, nResponseCode, ptszBody);
9696
}
9797
BaseLib_OperatorMemory_FreeCStyle((VOID**)&ptszBody);
98-
XLOG_PRINT(xhLog, XENGINE_HELPCOMPONENTS_XLOG_IN_LOGLEVEL_INFO, _X("业务客户端:%s,代理服务:%s 验证通过,用户名:%s,密码:%s"), lpszClientAddr, st_ServiceCfg.st_XProxy.st_XProxyAuth.tszAuthProxy, tszUserName, tszUserPass);
98+
XLOG_PRINT(xhLog, XENGINE_HELPCOMPONENTS_XLOG_IN_LOGLEVEL_INFO, _X("业务客户端:%s,代理服务:%s 验证通过,用户名:%s,密码:%s"), lpszClientAddr, st_ServiceCfg.st_XProxy.tszAuthPass, tszUserName, tszUserPass);
9999
}
100100
else
101101
{

XEngine_Source/XEngine_StorageApp/StorageApp_Download.cpp

Lines changed: 8 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -67,7 +67,7 @@ void CALLBACK XEngine_Download_CBSend(LPCXSTR lpszClientAddr, XSOCKET hSocket, X
6767
{
6868
if (nMsgLen <= 0)
6969
{
70-
if (st_ServiceCfg.st_XProxy.st_XProxyPass.bDLPass)
70+
if (st_ServiceCfg.st_XProxy.bDLPass)
7171
{
7272
int nPLen = MAX_PATH;
7373
int nHttpCode = 0;
@@ -79,13 +79,13 @@ void CALLBACK XEngine_Download_CBSend(LPCXSTR lpszClientAddr, XSOCKET hSocket, X
7979

8080
Session_DLStroage_GetInfo(lpszClientAddr, &st_StorageInfo);
8181
Protocol_StoragePacket_UPDown(tszProxyStr, &nPLen, st_StorageInfo.tszFileDir, st_StorageInfo.tszBuckKey, st_StorageInfo.tszClientAddr, st_StorageInfo.ullRWCount, true, st_StorageInfo.tszFileHash);
82-
if (APIClient_Http_Request(_X("POST"), st_ServiceCfg.st_XProxy.st_XProxyPass.tszDLPass, tszProxyStr, &nHttpCode))
82+
if (APIClient_Http_Request(_X("POST"), st_ServiceCfg.st_XProxy.tszDLPass, tszProxyStr, &nHttpCode))
8383
{
84-
XLOG_PRINT(xhLog, XENGINE_HELPCOMPONENTS_XLOG_IN_LOGLEVEL_INFO, _X("下载客户端:%s,请求完成通知返回值:%d,文件:%s,地址:%s"), lpszClientAddr, nHttpCode, st_StorageInfo.tszFileDir, st_ServiceCfg.st_XProxy.st_XProxyPass.tszDLPass);
84+
XLOG_PRINT(xhLog, XENGINE_HELPCOMPONENTS_XLOG_IN_LOGLEVEL_INFO, _X("下载客户端:%s,请求完成通知返回值:%d,文件:%s,地址:%s"), lpszClientAddr, nHttpCode, st_StorageInfo.tszFileDir, st_ServiceCfg.st_XProxy.tszDLPass);
8585
}
8686
else
8787
{
88-
XLOG_PRINT(xhLog, XENGINE_HELPCOMPONENTS_XLOG_IN_LOGLEVEL_ERROR, _X("下载客户端:%s,请求完成通知失败,可能对方服务没有开启,文件:%s,地址:%s"), lpszClientAddr, st_StorageInfo.tszFileDir, st_ServiceCfg.st_XProxy.st_XProxyPass.tszDLPass);
88+
XLOG_PRINT(xhLog, XENGINE_HELPCOMPONENTS_XLOG_IN_LOGLEVEL_ERROR, _X("下载客户端:%s,请求完成通知失败,可能对方服务没有开启,文件:%s,地址:%s"), lpszClientAddr, st_StorageInfo.tszFileDir, st_ServiceCfg.st_XProxy.tszDLPass);
8989
}
9090
}
9191
NetCore_TCPXCore_CBSendEx(xhNetDownload, lpszClientAddr);
@@ -156,7 +156,7 @@ bool XEngine_Task_HttpDownload(LPCXSTR lpszClientAddr, LPCXSTR lpszMsgBuffer, in
156156
}
157157
}
158158
//验证用户
159-
if (st_ServiceCfg.st_XProxy.st_XProxyAuth.bAuth)
159+
if (st_ServiceCfg.st_XAuth.bDLAuth)
160160
{
161161
XCHAR tszUserName[64];
162162
XCHAR tszUserPass[64];
@@ -174,15 +174,15 @@ bool XEngine_Task_HttpDownload(LPCXSTR lpszClientAddr, LPCXSTR lpszMsgBuffer, in
174174
XLOG_PRINT(xhLog, XENGINE_HELPCOMPONENTS_XLOG_IN_LOGLEVEL_ERROR, _X("下载客户端:%s,用户验证失败,错误:%lX"), lpszClientAddr, StorageHelp_GetLastError());
175175
return false;
176176
}
177-
if (_tcsxlen(st_ServiceCfg.st_XProxy.st_XProxyAuth.tszAuthProxy) > 0)
177+
if (st_ServiceCfg.st_XProxy.bAuthPass)
178178
{
179179
int nBLen = 0;
180180
int nCode = 0;
181181
int nResponseCode = 0;
182182
XCHAR* ptszBody = NULL;
183183

184184
Protocol_StoragePacket_BasicAuth(pSt_HTTPParam->tszHttpMethod, pSt_HTTPParam->tszHttpUri, lpszClientAddr, tszUserName, tszUserPass, tszSDBuffer, &nSDLen);
185-
APIClient_Http_Request(_X("POST"), st_ServiceCfg.st_XProxy.st_XProxyAuth.tszAuthProxy, tszSDBuffer, &nResponseCode, &ptszBody, &nBLen);
185+
APIClient_Http_Request(_X("POST"), st_ServiceCfg.st_XProxy.tszAuthPass, tszSDBuffer, &nResponseCode, &ptszBody, &nBLen);
186186
if (200 != nResponseCode)
187187
{
188188
st_HDRParam.bIsClose = true;
@@ -195,7 +195,7 @@ bool XEngine_Task_HttpDownload(LPCXSTR lpszClientAddr, LPCXSTR lpszMsgBuffer, in
195195
}
196196
Protocol_StorageParse_SpeedLimit(ptszBody, nSDLen, &nCode, &nLimit);
197197
BaseLib_OperatorMemory_FreeCStyle((VOID**)&ptszBody);
198-
XLOG_PRINT(xhLog, XENGINE_HELPCOMPONENTS_XLOG_IN_LOGLEVEL_INFO, _X("下载客户端:%s,代理服务:%s 验证通过,用户名:%s,密码:%s,值:%d"), lpszClientAddr, st_ServiceCfg.st_XProxy.st_XProxyAuth.tszAuthProxy, tszUserName, tszUserPass, nCode);
198+
XLOG_PRINT(xhLog, XENGINE_HELPCOMPONENTS_XLOG_IN_LOGLEVEL_INFO, _X("下载客户端:%s,代理服务:%s 验证通过,用户名:%s,密码:%s,值:%d"), lpszClientAddr, st_ServiceCfg.st_XProxy.tszAuthPass, tszUserName, tszUserPass, nCode);
199199
}
200200
else
201201
{

XEngine_Source/XEngine_StorageApp/StorageApp_UPLoader.cpp

Lines changed: 8 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -77,7 +77,7 @@ bool XEngine_Task_HttpUPLoader(LPCXSTR lpszClientAddr, LPCXSTR lpszMsgBuffer, in
7777
}
7878
}
7979
//用户验证
80-
if (st_ServiceCfg.st_XProxy.st_XProxyAuth.bAuth)
80+
if (st_ServiceCfg.st_XAuth.bUPAuth)
8181
{
8282
XCHAR tszUserName[64];
8383
XCHAR tszUserPass[64];
@@ -95,14 +95,14 @@ bool XEngine_Task_HttpUPLoader(LPCXSTR lpszClientAddr, LPCXSTR lpszMsgBuffer, in
9595
XLOG_PRINT(xhLog, XENGINE_HELPCOMPONENTS_XLOG_IN_LOGLEVEL_ERROR, _X("上传客户端:%s,用户验证失败,错误:%lX"), lpszClientAddr, StorageHelp_GetLastError());
9696
return false;
9797
}
98-
if (_tcsxlen(st_ServiceCfg.st_XProxy.st_XProxyAuth.tszAuthProxy) > 0)
98+
if (st_ServiceCfg.st_XProxy.bAuthPass)
9999
{
100100
int nBLen = 0;
101101
int nResponseCode = 0;
102102
XCHAR* ptszBody = NULL;
103103

104104
Protocol_StoragePacket_BasicAuth(pSt_HTTPParam->tszHttpMethod, pSt_HTTPParam->tszHttpUri, lpszClientAddr, tszUserName, tszUserPass, tszSDBuffer, &nSDLen);
105-
APIClient_Http_Request(_X("POST"), st_ServiceCfg.st_XProxy.st_XProxyAuth.tszAuthProxy, tszSDBuffer, &nResponseCode, &ptszBody, &nBLen);
105+
APIClient_Http_Request(_X("POST"), st_ServiceCfg.st_XProxy.tszAuthPass, tszSDBuffer, &nResponseCode, &ptszBody, &nBLen);
106106
if (200 != nResponseCode)
107107
{
108108
st_HDRParam.bIsClose = true;
@@ -114,7 +114,7 @@ bool XEngine_Task_HttpUPLoader(LPCXSTR lpszClientAddr, LPCXSTR lpszMsgBuffer, in
114114
XLOG_PRINT(xhLog, XENGINE_HELPCOMPONENTS_XLOG_IN_LOGLEVEL_ERROR, _X("上传客户端:%s,用户验证失败,用户名:%s,密码:%s,错误码:%d,错误内容:%s"), tszUserName, tszUserPass, tszUserPass, nResponseCode, ptszBody);
115115
}
116116
BaseLib_OperatorMemory_FreeCStyle((VOID**)&ptszBody);
117-
XLOG_PRINT(xhLog, XENGINE_HELPCOMPONENTS_XLOG_IN_LOGLEVEL_INFO, _X("上传客户端:%s,代理服务:%s 验证通过,用户名:%s,密码:%s"), lpszClientAddr, st_ServiceCfg.st_XProxy.st_XProxyAuth.tszAuthProxy, tszUserName, tszUserPass);
117+
XLOG_PRINT(xhLog, XENGINE_HELPCOMPONENTS_XLOG_IN_LOGLEVEL_INFO, _X("上传客户端:%s,代理服务:%s 验证通过,用户名:%s,密码:%s"), lpszClientAddr, st_ServiceCfg.st_XProxy.tszAuthPass, tszUserName, tszUserPass);
118118
}
119119
else
120120
{
@@ -355,16 +355,16 @@ bool XEngine_Task_HttpUPLoader(LPCXSTR lpszClientAddr, LPCXSTR lpszMsgBuffer, in
355355
XLOG_PRINT(xhLog, XENGINE_HELPCOMPONENTS_XLOG_IN_LOGLEVEL_WARN, _X("上传客户端:%s,请求上传文件成功,文件名:%s,大小:%d,数据库没有启用,不插入数据库"), lpszClientAddr, tszFileDir, nRVCount);
356356
}
357357
//PASS代理
358-
if (st_ServiceCfg.st_XProxy.st_XProxyPass.bUPPass)
358+
if (st_ServiceCfg.st_XProxy.bUPPass)
359359
{
360360
int nHttpCode = 0;
361-
if (APIClient_Http_Request(_X("POST"), st_ServiceCfg.st_XProxy.st_XProxyPass.tszUPPass, tszPassNotify, &nHttpCode))
361+
if (APIClient_Http_Request(_X("POST"), st_ServiceCfg.st_XProxy.tszUPPass, tszPassNotify, &nHttpCode))
362362
{
363-
XLOG_PRINT(xhLog, XENGINE_HELPCOMPONENTS_XLOG_IN_LOGLEVEL_INFO, _X("上传客户端:%s,请求完成通知返回值:%d,文件:%s,地址:%s"), lpszClientAddr, nHttpCode, st_StorageInfo.tszFileDir, st_ServiceCfg.st_XProxy.st_XProxyPass.tszUPPass);
363+
XLOG_PRINT(xhLog, XENGINE_HELPCOMPONENTS_XLOG_IN_LOGLEVEL_INFO, _X("上传客户端:%s,请求完成通知返回值:%d,文件:%s,地址:%s"), lpszClientAddr, nHttpCode, st_StorageInfo.tszFileDir, st_ServiceCfg.st_XProxy.tszUPPass);
364364
}
365365
else
366366
{
367-
XLOG_PRINT(xhLog, XENGINE_HELPCOMPONENTS_XLOG_IN_LOGLEVEL_ERROR, _X("上传客户端:%s,请求完成通知失败,可能服务器不正确:文件:%s,地址:%s"), lpszClientAddr, st_StorageInfo.tszFileDir, st_ServiceCfg.st_XProxy.st_XProxyPass.tszUPPass);
367+
XLOG_PRINT(xhLog, XENGINE_HELPCOMPONENTS_XLOG_IN_LOGLEVEL_ERROR, _X("上传客户端:%s,请求完成通知失败,可能服务器不正确:文件:%s,地址:%s"), lpszClientAddr, st_StorageInfo.tszFileDir, st_ServiceCfg.st_XProxy.tszUPPass);
368368
}
369369
}
370370
}

XEngine_Source/XEngine_StorageApp/XEngine_StorageApp.cpp

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -217,7 +217,7 @@ int main(int argc, char** argv)
217217
XLOG_PRINT(xhLog, XENGINE_HELPCOMPONENTS_XLOG_IN_LOGLEVEL_WARN, _X("启动服务中,初始化数据库失败,数据库被设置为禁用,相关功能已经被禁止使用!"));
218218
}
219219

220-
if (!Session_User_Init(st_ServiceCfg.st_XProxy.st_XProxyAuth.tszUserList))
220+
if (!Session_User_Init(st_ServiceCfg.st_XAuth.tszUserList))
221221
{
222222
XLOG_PRINT(xhLog, XENGINE_HELPCOMPONENTS_XLOG_IN_LOGLEVEL_ERROR, _X("启动服务中,启动用户管理服务失败,错误:%lX"), Session_GetLastError());
223223
goto XENGINE_EXITAPP;

0 commit comments

Comments
 (0)