X-Git-Url: https://git.stg.codes/stg.git/blobdiff_plain/cdd6c43fceeb5a37867ae902bb71429abad7fa64..1325cf9788d4089f9d20bf2121b0872c6369c817:/stglibs/srvconf.lib/servconf.cpp?ds=sidebyside diff --git a/stglibs/srvconf.lib/servconf.cpp b/stglibs/srvconf.lib/servconf.cpp index 8061d7aa..a28e2e86 100644 --- a/stglibs/srvconf.lib/servconf.cpp +++ b/stglibs/srvconf.lib/servconf.cpp @@ -24,9 +24,10 @@ $Author: faust $ */ -#include -#include +#include +#include +#include "stg/common.h" #include "servconf.h" using namespace std; @@ -63,12 +64,9 @@ while (node != list1->end()) if (XML_Parse(sc->parser, ans, len, done) == XML_STATUS_ERROR) { - snprintf(sc->errorMsg, MAX_ERR_STR_LEN, "XML parse error at line %d: %s", - static_cast(XML_GetCurrentLineNumber(sc->parser)), - XML_ErrorString(XML_GetErrorCode(sc->parser))); - printf(sc->errorMsg, "XML parse error at line %d: %s", - XML_GetCurrentLineNumber(sc->parser), - XML_ErrorString(XML_GetErrorCode(sc->parser))); + strprintf(&sc->errorMsg, "XML parse error at line %d: %s", + static_cast(XML_GetCurrentLineNumber(sc->parser)), + XML_ErrorString(XML_GetErrorCode(sc->parser))); return st_xml_parse_error; } ++node; @@ -93,9 +91,23 @@ sc->End(el); } //----------------------------------------------------------------------------- SERVCONF::SERVCONF() + : currParser(NULL), + parseDepth(0), + error(0), + RecvUserDataCb(NULL), + RecvGetUserDataCb(NULL), + RecvServerInfoDataCb(NULL), + RecvChgUserCb(NULL), + RecvCheckUserCb(NULL), + RecvSendMessageCb(NULL), + getUserDataDataCb(NULL), + getUsersDataDataCb(NULL), + getServerInfoDataCb(NULL), + chgUserDataCb(NULL), + checkUserDataCb(NULL), + sendMessageDataCb(NULL) { parser = XML_ParserCreate(NULL); -parseDepth = 0; } //----------------------------------------------------------------------------- void SERVCONF::SetServer(const char * server) @@ -132,17 +144,17 @@ nt.SetRxCallback(this, AnsRecv); if ((ret = nt.Connect()) != st_ok) { - strncpy(errorMsg, nt.GetError(), MAX_ERR_STR_LEN); + errorMsg = nt.GetError(); return ret; } if ((ret = nt.Transact(request)) != st_ok) { - strncpy(errorMsg, nt.GetError(), MAX_ERR_STR_LEN); + errorMsg = nt.GetError(); return ret; } if ((ret = nt.Disconnect()) != st_ok) { - strncpy(errorMsg, nt.GetError(), MAX_ERR_STR_LEN); + errorMsg = nt.GetError(); return ret; } @@ -162,17 +174,17 @@ nt.SetRxCallback(this, AnsRecv); if ((ret = nt.Connect()) != st_ok) { - strncpy(errorMsg, nt.GetError(), MAX_ERR_STR_LEN); + errorMsg = nt.GetError(); return ret; } if ((ret = nt.Transact(request)) != st_ok) { - strncpy(errorMsg, nt.GetError(), MAX_ERR_STR_LEN); + errorMsg = nt.GetError(); return ret; } if ((ret = nt.Disconnect()) != st_ok) { - strncpy(errorMsg, nt.GetError(), MAX_ERR_STR_LEN); + errorMsg = nt.GetError(); return ret; } @@ -195,17 +207,17 @@ nt.SetRxCallback(this, AnsRecv); if ((ret = nt.Connect()) != st_ok) { - strncpy(errorMsg, nt.GetError(), MAX_ERR_STR_LEN); + errorMsg = nt.GetError(); return ret; } if ((ret = nt.Transact(request)) != st_ok) { - strncpy(errorMsg, nt.GetError(), MAX_ERR_STR_LEN); + errorMsg = nt.GetError(); return ret; } if ((ret = nt.Disconnect()) != st_ok) { - strncpy(errorMsg, nt.GetError(), MAX_ERR_STR_LEN); + errorMsg = nt.GetError(); return ret; } @@ -225,17 +237,17 @@ nt.SetRxCallback(this, AnsRecv); if ((ret = nt.Connect()) != st_ok) { - strncpy(errorMsg, nt.GetError(), MAX_ERR_STR_LEN); + errorMsg = nt.GetError(); return ret; } if ((ret = nt.Transact(request)) != st_ok) { - strncpy(errorMsg, nt.GetError(), MAX_ERR_STR_LEN); + errorMsg = nt.GetError(); return ret; } if ((ret = nt.Disconnect()) != st_ok) { - strncpy(errorMsg, nt.GetError(), MAX_ERR_STR_LEN); + errorMsg = nt.GetError(); return ret; } @@ -254,20 +266,17 @@ nt.SetRxCallback(this, AnsRecv); if ((ret = nt.Connect()) != st_ok) { - strncpy(errorMsg, nt.GetError(), MAX_ERR_STR_LEN); - printfd(__FILE__, "Error on connect: '%s'\n", errorMsg); + errorMsg = nt.GetError(); return ret; } if ((ret = nt.Transact(request)) != st_ok) { - strncpy(errorMsg, nt.GetError(), MAX_ERR_STR_LEN); - printfd(__FILE__, "Error on transact: '%s'\n", errorMsg); + errorMsg = nt.GetError(); return ret; } if ((ret = nt.Disconnect()) != st_ok) { - strncpy(errorMsg, nt.GetError(), MAX_ERR_STR_LEN); - printfd(__FILE__, "Error on disconnect: '%s'\n", errorMsg); + errorMsg = nt.GetError(); return ret; } @@ -288,17 +297,17 @@ nt.SetRxCallback(this, AnsRecv); if ((ret = nt.Connect()) != st_ok) { - strncpy(errorMsg, nt.GetError(), MAX_ERR_STR_LEN); + errorMsg = nt.GetError(); return ret; } if ((ret = nt.Transact(request)) != st_ok) { - strncpy(errorMsg, nt.GetError(), MAX_ERR_STR_LEN); + errorMsg = nt.GetError(); return ret; } if ((ret = nt.Disconnect()) != st_ok) { - strncpy(errorMsg, nt.GetError(), MAX_ERR_STR_LEN); + errorMsg = nt.GetError(); return ret; } @@ -319,17 +328,17 @@ nt.SetRxCallback(this, AnsRecv); if ((ret = nt.Connect()) != st_ok) { - strncpy(errorMsg, nt.GetError(), MAX_ERR_STR_LEN); + errorMsg = nt.GetError(); return ret; } if ((ret = nt.Transact(request)) != st_ok) { - strncpy(errorMsg, nt.GetError(), MAX_ERR_STR_LEN); + errorMsg = nt.GetError(); return ret; } if ((ret = nt.Disconnect()) != st_ok) { - strncpy(errorMsg, nt.GetError(), MAX_ERR_STR_LEN); + errorMsg = nt.GetError(); return ret; } @@ -383,7 +392,7 @@ RecvSendMessageCb = f; sendMessageDataCb = data; } //----------------------------------------------------------------------------- -char * SERVCONF::GetStrError() +const std::string & SERVCONF::GetStrError() const { return errorMsg; }