X-Git-Url: https://git.stg.codes/stg.git/blobdiff_plain/e19d853bbf16b7ba8c58c71c1da488b9034e0fb3..e3703f791ff52f6d7a9d6f9e8dca37a506967c2b:/stglibs/srvconf.lib/servconf.cpp?ds=sidebyside diff --git a/stglibs/srvconf.lib/servconf.cpp b/stglibs/srvconf.lib/servconf.cpp index 9d7e35f2..2f4afaba 100644 --- a/stglibs/srvconf.lib/servconf.cpp +++ b/stglibs/srvconf.lib/servconf.cpp @@ -92,26 +92,29 @@ sc->End(el); //----------------------------------------------------------------------------- SERVCONF::SERVCONF() : currParser(NULL), - parseDepth(0), error(0), RecvUserDataCb(NULL), RecvGetUserDataCb(NULL), - authByCallback(NULL), - serverInfoCallback(NULL), + RecvServerInfoDataCb(NULL), RecvChgUserCb(NULL), - checkUserCallback(NULL), + RecvCheckUserCb(NULL), RecvSendMessageCb(NULL), getUserDataDataCb(NULL), - authByData(NULL), + getUserAuthByDataCb(NULL), getUsersDataDataCb(NULL), - serverInfoData(NULL), + getServerInfoDataCb(NULL), chgUserDataCb(NULL), - checkUserData(NULL), + checkUserDataCb(NULL), sendMessageDataCb(NULL) { parser = XML_ParserCreate(NULL); } //----------------------------------------------------------------------------- +SERVCONF::~SERVCONF() +{ +XML_ParserFree(parser); +} +//----------------------------------------------------------------------------- void SERVCONF::SetServer(const char * server) { nt.SetServer(server); @@ -163,18 +166,18 @@ if ((ret = nt.Disconnect()) != st_ok) return st_ok; } //----------------------------------------------------------------------------- -int SERVCONF::AuthBy(const char * l) +int SERVCONF::GetUserAuthBy(const char * l) { char request[255]; snprintf(request, 255, "", l); +int ret; currParser = &parserAuthBy; -((PARSER_AUTH_BY*)currParser)->SetCallback(authByCallback, authByData); +((PARSER_AUTH_BY*)currParser)->SetRecvCb(RecvAuthByCb, getUserAuthByDataCb); nt.Reset(); nt.SetRxCallback(this, AnsRecv); -int ret; if ((ret = nt.Connect()) != st_ok) { errorMsg = nt.GetError(); @@ -257,13 +260,13 @@ if ((ret = nt.Disconnect()) != st_ok) return st_ok; } //----------------------------------------------------------------------------- -int SERVCONF::ServerInfo() +int SERVCONF::GetServerInfo() { char request[] = ""; int ret; currParser = &parserServerInfo; -((PARSER_SERVER_INFO*)currParser)->SetCallback(serverInfoCallback, serverInfoData); +((PARSER_GET_SERVER_INFO*)currParser)->SetServerInfoRecvCb(RecvServerInfoDataCb, getServerInfoDataCb); nt.Reset(); nt.SetRxCallback(this, AnsRecv); @@ -354,7 +357,7 @@ snprintf(request, 255, "", login, passw int ret; currParser = &parserCheckUser; -((PARSER_CHECK_USER*)currParser)->SetCallback(checkUserCallback, checkUserData); +((PARSER_CHECK_USER*)currParser)->SetCheckUserRecvCb(RecvCheckUserCb, checkUserDataCb); nt.Reset(); nt.SetRxCallback(this, AnsRecv); @@ -401,16 +404,16 @@ RecvGetUserDataCb = f; //GET_USER getUserDataDataCb = data; } //----------------------------------------------------------------------------- -void SERVCONF::SetAuthByCallback(PARSER_AUTH_BY::CALLBACK f, void * data) +void SERVCONF::SetGetUserAuthByRecvCb(RecvAuthByDataCb_t f, void * data) { -authByCallback = f; -authByData = data; +RecvAuthByCb = f; +getUserAuthByDataCb = data; } //----------------------------------------------------------------------------- -void SERVCONF::SetServerInfoCallback(PARSER_SERVER_INFO::CALLBACK f, void * data) +void SERVCONF::SetServerInfoRecvCb(RecvServerInfoDataCb_t f, void * data) { -serverInfoCallback = f; -serverInfoData = data; +RecvServerInfoDataCb = f; +getServerInfoDataCb = data; } //----------------------------------------------------------------------------- void SERVCONF::SetChgUserCb(RecvChgUserCb_t f, void * data) @@ -419,10 +422,10 @@ RecvChgUserCb = f; chgUserDataCb = data; } //----------------------------------------------------------------------------- -void SERVCONF::SetCheckUserCallback(PARSER_CHECK_USER::CALLBACK f, void * data) +void SERVCONF::SetCheckUserCb(RecvCheckUserCb_t f, void * data) { -checkUserCallback = f; -checkUserData = data; +RecvCheckUserCb = f; +checkUserDataCb = data; } //----------------------------------------------------------------------------- void SERVCONF::SetSendMessageCb(RecvSendMessageCb_t f, void * data)