X-Git-Url: https://git.stg.codes/stg.git/blobdiff_plain/3df642f3d2537dc5531a8d91c6d85927b34b46c7..61b5cf35c82a5850ceb07fca5232a409e249444c:/projects/stargazer/plugins/configuration/sgconfig/configproto.cpp diff --git a/projects/stargazer/plugins/configuration/sgconfig/configproto.cpp b/projects/stargazer/plugins/configuration/sgconfig/configproto.cpp index 07c319a0..ec3e3ee3 100644 --- a/projects/stargazer/plugins/configuration/sgconfig/configproto.cpp +++ b/projects/stargazer/plugins/configuration/sgconfig/configproto.cpp @@ -28,11 +28,10 @@ $Author: faust $ */ +#include "configproto.h" #include -#include "configproto.h" - //----------------------------------------------------------------------------- void ParseXMLStart(void *data, const char *el, const char **attr) { @@ -86,39 +85,16 @@ else } } //----------------------------------------------------------------------------- -CONFIGPROTO::CONFIGPROTO() - : answerList(), - requestList(), - adminIP(0), - adminLogin(), +CONFIGPROTO::CONFIGPROTO(PLUGIN_LOGGER & l) + : adminIP(0), port(0), - thrReciveSendConf(), nonstop(true), state(0), currAdmin(NULL), - WriteServLog(GetStgLogger()), + logger(l), listenSocket(-1), - parserGetServInfo(), - parserGetUsers(), - parserGetUser(), - parserChgUser(), - parserAddUser(), - parserDelUser(), - parserCheckUser(), - parserSendMessage(), - parserGetAdmins(), - parserAddAdmin(), - parserDelAdmin(), - parserChgAdmin(), - parserGetTariffs(), - parserAddTariff(), - parserDelTariff(), - parserChgTariff(), admins(NULL), - currParser(NULL), - dataParser(), - xmlParser(), - errorStr() + currParser(NULL) { dataParser.push_back(&parserGetServInfo); @@ -129,6 +105,8 @@ dataParser.push_back(&parserAddUser); dataParser.push_back(&parserDelUser); dataParser.push_back(&parserCheckUser); dataParser.push_back(&parserSendMessage); +dataParser.push_back(&parserAuthBy); +dataParser.push_back(&parserUserInfo); dataParser.push_back(&parserGetTariffs); dataParser.push_back(&parserAddTariff); @@ -144,7 +122,7 @@ xmlParser = XML_ParserCreate(NULL); if (!xmlParser) { - WriteServLog("Couldn't allocate memory for parser."); + logger("Couldn't allocate memory for parser."); exit(1); } @@ -157,10 +135,9 @@ XML_ParserFree(xmlParser); //----------------------------------------------------------------------------- int CONFIGPROTO::ParseCommand() { -list::iterator n; +std::list::iterator n; int done = 0; char str[9]; -int len; if (requestList.empty()) return 0; @@ -178,16 +155,16 @@ while(nonstop) { strncpy(str, (*n).c_str(), 8); str[8] = 0; - len = strlen(str); + size_t len = strlen(str); ++n; if (n == requestList.end()) done = 1; --n; - if (XML_Parse(xmlParser, (*n).c_str(), len, done) == XML_STATUS_ERROR) + if (XML_Parse(xmlParser, (*n).c_str(), static_cast(len), done) == XML_STATUS_ERROR) { - WriteServLog("Invalid configuration request"); + logger("Invalid configuration request"); printfd(__FILE__, "Parse error at line %d:\n%s\n", XML_GetCurrentLineNumber(xmlParser), XML_ErrorString(XML_GetErrorCode(xmlParser))); @@ -210,51 +187,34 @@ while(nonstop) return 0; } //----------------------------------------------------------------------------- -void CONFIGPROTO::SetPort(uint16_t p) -{ -port = p; -} -//----------------------------------------------------------------------------- void CONFIGPROTO::SetAdmins(ADMINS * a) { admins = a; for (size_t i = 0; i < dataParser.size(); i++) - { dataParser[i]->SetAdmins(a); - } - } //----------------------------------------------------------------------------- void CONFIGPROTO::SetUsers(USERS * u) { for (size_t i = 0; i < dataParser.size(); i++) - { dataParser[i]->SetUsers(u); - } - } //----------------------------------------------------------------------------- void CONFIGPROTO::SetTariffs(TARIFFS * t) { for (size_t i = 0; i < dataParser.size(); i++) - { dataParser[i]->SetTariffs(t); - } } //----------------------------------------------------------------------------- void CONFIGPROTO::SetStore(STORE * s) { for (size_t i = 0; i < dataParser.size(); i++) - { dataParser[i]->SetStore(s); - } } //----------------------------------------------------------------------------- void CONFIGPROTO::SetStgSettings(const SETTINGS * s) { for (size_t i = 0; i < dataParser.size(); i++) - { dataParser[i]->SetStgSettings(s); - } } //-----------------------------------------------------------------------------