From c963a109219ed101fa42f501b16f90d7b7b4f3f2 Mon Sep 17 00:00:00 2001 From: Maxim Mamontov Date: Fri, 18 Mar 2011 17:15:05 +0200 Subject: [PATCH] Fix compilation issues --- include/auth.h | 2 +- .../{module_setting.h => module_settings.h} | 0 include/store.h | 2 +- include/user.h | 2 +- projects/convertor/main.cpp | 4 +- projects/stargazer/admins_impl.cpp | 2 +- projects/stargazer/main.cpp | 4 +- projects/stargazer/plugin_runner.cpp | 2 +- .../stargazer/plugins/authorization/ao/ao.cpp | 2 +- .../authorization/inetaccess/inetaccess.cpp | 4 +- .../plugins/capture/cap_nf/cap_nf.cpp | 4 +- .../stargazer/plugins/capture/cap_nf/cap_nf.h | 4 +- .../plugins/capture/ipq_linux/ipq_cap.h | 6 +- .../configuration/sgconfig/configproto.cpp | 2 +- .../configuration/sgconfig/stgconfig.cpp | 2 +- .../configuration/sgconfig2/configproto.cpp | 2 +- .../stargazer/plugins/other/radius/radius.cpp | 2 +- .../stargazer/plugins/other/rscript/rscript.h | 2 +- .../plugins/store/files/file_store.cpp | 2 +- .../plugins/store/firebird/firebird_store.cpp | 2 +- .../plugins/store/mysql/mysql_store.cpp | 2 +- .../store/postgresql/postgresql_store.cpp | 4 +- .../store/postgresql/postgresql_store.h | 2 +- projects/stargazer/settings.h | 104 +++++++++--------- projects/stargazer/store_loader.cpp | 4 +- projects/stargazer/users_impl.cpp | 2 +- 26 files changed, 85 insertions(+), 85 deletions(-) rename include/{module_setting.h => module_settings.h} (100%) diff --git a/include/auth.h b/include/auth.h index c48dd7d0..8cdc3f2d 100644 --- a/include/auth.h +++ b/include/auth.h @@ -30,7 +30,7 @@ #include "stg_message.h" #include "noncopyable.h" -class AUTH : public PLUGIN, private NONCOPYABLE { +class AUTH : public PLUGIN { public: virtual int SendMessage(const STG_MSG & msg, uint32_t ip) const = 0; }; diff --git a/include/module_setting.h b/include/module_settings.h similarity index 100% rename from include/module_setting.h rename to include/module_settings.h diff --git a/include/store.h b/include/store.h index 7721f31c..f33a0653 100644 --- a/include/store.h +++ b/include/store.h @@ -37,7 +37,7 @@ #include "service_conf.h" #include "admin_conf.h" #include "tariff_conf.h" -#include "settings.h" +#include "module_settings.h" #include "stg_message.h" //----------------------------------------------------------------------------- diff --git a/include/user.h b/include/user.h index bd48e300..90ce626d 100644 --- a/include/user.h +++ b/include/user.h @@ -26,12 +26,12 @@ #include "os_int.h" #include "notifer.h" -#include "auth.h" #include "stg_message.h" #include "tariff.h" #include "user_traff.h" class USER_PROPERTIES; +class AUTH; class USER { public: diff --git a/projects/convertor/main.cpp b/projects/convertor/main.cpp index 5985f5a6..3d08ad2a 100644 --- a/projects/convertor/main.cpp +++ b/projects/convertor/main.cpp @@ -114,14 +114,14 @@ if (!dst_lh) STORE * (*GetSourceStore)(); STORE * (*GetDestStore)(); -GetSourceStore = (BASE_STORE * (*)())dlsym(src_lh, "GetStore"); +GetSourceStore = (STORE * (*)())dlsym(src_lh, "GetStore"); if (!GetSourceStore) { printfd(__FILE__, "Source storage plugin loading failed. GetStore not found: %s\n", dlerror()); delete settings; return -1; } -GetDestStore = (BASE_STORE * (*)())dlsym(dst_lh, "GetStore"); +GetDestStore = (STORE * (*)())dlsym(dst_lh, "GetStore"); if (!GetDestStore) { printfd(__FILE__, "Storage plugin (firebird) loading failed. GetStore not found: %s\n", dlerror()); diff --git a/projects/stargazer/admins_impl.cpp b/projects/stargazer/admins_impl.cpp index 20bd8ef8..99a8ff48 100644 --- a/projects/stargazer/admins_impl.cpp +++ b/projects/stargazer/admins_impl.cpp @@ -41,7 +41,7 @@ using namespace std; //----------------------------------------------------------------------------- -ADMINS_IMPL::ADMINS_IMPL(BASE_STORE * st) +ADMINS_IMPL::ADMINS_IMPL(STORE * st) : stg(0xFFFF, "@stargazer", ""), noAdmin(0xFFFF, "NO-ADMIN", ""), data(), diff --git a/projects/stargazer/main.cpp b/projects/stargazer/main.cpp index 12fa7383..8eacc9ac 100644 --- a/projects/stargazer/main.cpp +++ b/projects/stargazer/main.cpp @@ -51,7 +51,7 @@ #include "tariffs_impl.h" #include "common.h" #include "traffcounter.h" -#include "base_plugin.h" +#include "plugin.h" #include "stg_logger.h" #include "stg_timer.h" #include "plugin_runner.h" @@ -451,7 +451,7 @@ int main(int argc, char * argv[]) * */ SETTINGS * settings = NULL; -BASE_STORE * dataStore = NULL; +STORE * dataStore = NULL; TARIFFS * tariffs = NULL; ADMINS * admins = NULL; USERS * users = NULL; diff --git a/projects/stargazer/plugin_runner.cpp b/projects/stargazer/plugin_runner.cpp index 335d790e..e21bb75d 100644 --- a/projects/stargazer/plugin_runner.cpp +++ b/projects/stargazer/plugin_runner.cpp @@ -39,7 +39,7 @@ PLUGIN_RUNNER::PLUGIN_RUNNER(const std::string & pFileName, TARIFFS * t, USERS * u, TRAFFCOUNTER * tc, - BASE_STORE * st, + STORE * st, const SETTINGS * s) : pluginFileName(pFileName), pluginSettingFileName(), diff --git a/projects/stargazer/plugins/authorization/ao/ao.cpp b/projects/stargazer/plugins/authorization/ao/ao.cpp index cb7fe2d3..b59bd58c 100644 --- a/projects/stargazer/plugins/authorization/ao/ao.cpp +++ b/projects/stargazer/plugins/authorization/ao/ao.cpp @@ -299,7 +299,7 @@ if (u->GetProperty().alwaysOnline) USER_IPS ips = u->GetProperty().ips; if (ips.OnlyOneIP()) { - if (u->Authorize(ips[0].ip, "", 0xFFffFFff, this) == 0) + if (u->Authorize(ips[0].ip, 0xFFffFFff, this) == 0) { } } diff --git a/projects/stargazer/plugins/authorization/inetaccess/inetaccess.cpp b/projects/stargazer/plugins/authorization/inetaccess/inetaccess.cpp index 3918f0b3..b3d8823e 100644 --- a/projects/stargazer/plugins/authorization/inetaccess/inetaccess.cpp +++ b/projects/stargazer/plugins/authorization/inetaccess/inetaccess.cpp @@ -1293,7 +1293,7 @@ if ((iaUser->phase.GetPhase() == 2) && (connAck->rnd == iaUser->rnd + 1)) iaUser->phase.UpdateTime(); iaUser->lastSendAlive = iaUser->phase.GetTime(); - if (iaUser->user->Authorize(sip, "", enabledDirs, this) == 0) + if (iaUser->user->Authorize(sip, enabledDirs, this) == 0) { iaUser->phase.SetPhase3(); printfd(__FILE__, "Phase changed from 2 to 3. Reason: CONN_ACK_6\n"); @@ -1328,7 +1328,7 @@ if ((iaUser->phase.GetPhase() == 2) && (connAck->rnd == iaUser->rnd + 1)) { iaUser->phase.UpdateTime(); iaUser->lastSendAlive = iaUser->phase.GetTime(); - if (iaUser->user->Authorize(sip, "", enabledDirs, this) == 0) + if (iaUser->user->Authorize(sip, enabledDirs, this) == 0) { iaUser->phase.SetPhase3(); printfd(__FILE__, "Phase changed from 2 to 3. Reason: CONN_ACK_8\n"); diff --git a/projects/stargazer/plugins/capture/cap_nf/cap_nf.cpp b/projects/stargazer/plugins/capture/cap_nf/cap_nf.cpp index ddbe935a..0e0204da 100644 --- a/projects/stargazer/plugins/capture/cap_nf/cap_nf.cpp +++ b/projects/stargazer/plugins/capture/cap_nf/cap_nf.cpp @@ -37,6 +37,8 @@ $Author: faust $ #include #include +#include + #include "common.h" #include "cap_nf.h" #include "raw_ip_packet.h" @@ -87,7 +89,7 @@ NF_CAP::~NF_CAP() int NF_CAP::ParseSettings() { -vector::iterator it; +std::vector::iterator it; for (it = settings.moduleParams.begin(); it != settings.moduleParams.end(); ++it) { if (it->param == "TCPPort") diff --git a/projects/stargazer/plugins/capture/cap_nf/cap_nf.h b/projects/stargazer/plugins/capture/cap_nf/cap_nf.h index c778a663..786be396 100644 --- a/projects/stargazer/plugins/capture/cap_nf/cap_nf.h +++ b/projects/stargazer/plugins/capture/cap_nf/cap_nf.h @@ -105,8 +105,8 @@ public: int Stop(); int Reload() { return 0; } bool IsRunning() { return runningTCP || runningUDP; } - const string & GetStrError() const { return errorStr; } - const string GetVersion() const { return VERSION; } + const std::string & GetStrError() const { return errorStr; } + const std::string GetVersion() const { return VERSION; } uint16_t GetStartPosition() const { return START_POS; } uint16_t GetStopPosition() const { return STOP_POS; } diff --git a/projects/stargazer/plugins/capture/ipq_linux/ipq_cap.h b/projects/stargazer/plugins/capture/ipq_linux/ipq_cap.h index f9fee71e..9c16f4fb 100644 --- a/projects/stargazer/plugins/capture/ipq_linux/ipq_cap.h +++ b/projects/stargazer/plugins/capture/ipq_linux/ipq_cap.h @@ -38,8 +38,8 @@ public: void SetSettings(const MODULE_SETTINGS &) {} int ParseSettings() { return 0; } - const string & GetStrError() const; - const string GetVersion() const; + const std::string & GetStrError() const; + const std::string GetVersion() const; uint16_t GetStartPosition() const; uint16_t GetStopPosition() const; @@ -50,7 +50,7 @@ private: int IPQCapRead(void * buffer, int blen); struct ipq_handle * ipq_h; - mutable string errorStr; + mutable std::string errorStr; pthread_t thread; bool nonstop; diff --git a/projects/stargazer/plugins/configuration/sgconfig/configproto.cpp b/projects/stargazer/plugins/configuration/sgconfig/configproto.cpp index dee6dbb9..f6f97f5f 100644 --- a/projects/stargazer/plugins/configuration/sgconfig/configproto.cpp +++ b/projects/stargazer/plugins/configuration/sgconfig/configproto.cpp @@ -219,7 +219,7 @@ for (unsigned int i = 0; i < dataParser.size(); i++) } } //----------------------------------------------------------------------------- -void CONFIGPROTO::SetStore(BASE_STORE * s) +void CONFIGPROTO::SetStore(STORE * s) { for (unsigned int i = 0; i < dataParser.size(); i++) { diff --git a/projects/stargazer/plugins/configuration/sgconfig/stgconfig.cpp b/projects/stargazer/plugins/configuration/sgconfig/stgconfig.cpp index 65c666f2..baf7cbee 100644 --- a/projects/stargazer/plugins/configuration/sgconfig/stgconfig.cpp +++ b/projects/stargazer/plugins/configuration/sgconfig/stgconfig.cpp @@ -131,7 +131,7 @@ void STG_CONFIG::SetAdmins(ADMINS * a) admins = a; } //----------------------------------------------------------------------------- -void STG_CONFIG::SetStore(BASE_STORE * s) +void STG_CONFIG::SetStore(STORE * s) { store = s; } diff --git a/projects/stargazer/plugins/configuration/sgconfig2/configproto.cpp b/projects/stargazer/plugins/configuration/sgconfig2/configproto.cpp index b0255e1d..1166d0e6 100644 --- a/projects/stargazer/plugins/configuration/sgconfig2/configproto.cpp +++ b/projects/stargazer/plugins/configuration/sgconfig2/configproto.cpp @@ -235,7 +235,7 @@ for (unsigned int i = 0; i < dataParser.size(); i++) } } //----------------------------------------------------------------------------- -void CONFIGPROTO::SetStore(BASE_STORE * s) +void CONFIGPROTO::SetStore(STORE * s) { store = s; for (unsigned int i = 0; i < dataParser.size(); i++) diff --git a/projects/stargazer/plugins/other/radius/radius.cpp b/projects/stargazer/plugins/other/radius/radius.cpp index c1ecab16..c3fb7183 100644 --- a/projects/stargazer/plugins/other/radius/radius.cpp +++ b/projects/stargazer/plugins/other/radius/radius.cpp @@ -534,7 +534,7 @@ if (CanAcctService((char *)packet->service)) return -1; } USER_IPS ips = ui->GetProperty().ips; - if (ui->Authorize(ips[0].ip, "", 0xffFFffFF, this)) + if (ui->Authorize(ips[0].ip, 0xffFFffFF, this)) { printfd(__FILE__, "RADIUS::ProcessAcctStartPacket cannot authorize user '%s'\n", packet->login); packet->packetType = RAD_REJECT_PACKET; diff --git a/projects/stargazer/plugins/other/rscript/rscript.h b/projects/stargazer/plugins/other/rscript/rscript.h index 7748144e..4e67a254 100644 --- a/projects/stargazer/plugins/other/rscript/rscript.h +++ b/projects/stargazer/plugins/other/rscript/rscript.h @@ -105,7 +105,7 @@ public: RS_SETTINGS(); virtual ~RS_SETTINGS() {} const std::string & GetStrError() const { return errorStr; } - int ParseSettings(const MODULE_SETTINGS & s) + int ParseSettings(const MODULE_SETTINGS & s); int GetSendPeriod() const { return sendPeriod; } int GetPort() const { return port; } const std::vector & GetSubnetsMap() const { return netRouters; } diff --git a/projects/stargazer/plugins/store/files/file_store.cpp b/projects/stargazer/plugins/store/files/file_store.cpp index 5969c640..e7d5ebaa 100644 --- a/projects/stargazer/plugins/store/files/file_store.cpp +++ b/projects/stargazer/plugins/store/files/file_store.cpp @@ -132,7 +132,7 @@ FILES_STORE_CREATOR fsc; //----------------------------------------------------------------------------- //----------------------------------------------------------------------------- //----------------------------------------------------------------------------- -BASE_STORE * GetStore() +STORE * GetStore() { return fsc.GetStore(); } diff --git a/projects/stargazer/plugins/store/firebird/firebird_store.cpp b/projects/stargazer/plugins/store/firebird/firebird_store.cpp index c9265e14..64306acf 100644 --- a/projects/stargazer/plugins/store/firebird/firebird_store.cpp +++ b/projects/stargazer/plugins/store/firebird/firebird_store.cpp @@ -52,7 +52,7 @@ private: } frsc; //----------------------------------------------------------------------------- -BASE_STORE * GetStore() +STORE * GetStore() { return frsc.GetStore(); } diff --git a/projects/stargazer/plugins/store/mysql/mysql_store.cpp b/projects/stargazer/plugins/store/mysql/mysql_store.cpp index f62a846f..59e7e3e8 100644 --- a/projects/stargazer/plugins/store/mysql/mysql_store.cpp +++ b/projects/stargazer/plugins/store/mysql/mysql_store.cpp @@ -118,7 +118,7 @@ public: //----------------------------------------------------------------------------- //----------------------------------------------------------------------------- //----------------------------------------------------------------------------- -BASE_STORE * GetStore() +STORE * GetStore() { return msc.GetStore(); } diff --git a/projects/stargazer/plugins/store/postgresql/postgresql_store.cpp b/projects/stargazer/plugins/store/postgresql/postgresql_store.cpp index d9586b89..fc15d035 100644 --- a/projects/stargazer/plugins/store/postgresql/postgresql_store.cpp +++ b/projects/stargazer/plugins/store/postgresql/postgresql_store.cpp @@ -46,7 +46,7 @@ #include "postgresql_store.h" #include "postgresql_store_utils.h" -#include "base_settings.h" +#include "module_settings.h" class POSTGRESQL_STORE_CREATOR { @@ -65,7 +65,7 @@ private: } pqStoreeCreator; //----------------------------------------------------------------------------- -BASE_STORE * GetStore() +STORE * GetStore() { return pqStoreeCreator.GetStore(); } diff --git a/projects/stargazer/plugins/store/postgresql/postgresql_store.h b/projects/stargazer/plugins/store/postgresql/postgresql_store.h index ba738bc0..d273803d 100644 --- a/projects/stargazer/plugins/store/postgresql/postgresql_store.h +++ b/projects/stargazer/plugins/store/postgresql/postgresql_store.h @@ -72,7 +72,7 @@ public: double cash, double freeMb, const std::string & reason) const; - int WriteDetailedStat(const std::map & statTree, + int WriteDetailedStat(const TRAFF_STAT & statTree, time_t lastStat, const std::string & login) const; diff --git a/projects/stargazer/settings.h b/projects/stargazer/settings.h index 711b43e6..46d40694 100644 --- a/projects/stargazer/settings.h +++ b/projects/stargazer/settings.h @@ -37,16 +37,15 @@ #ifndef SETTINGS_H #define SETTINGS_H +#include #include #include "common.h" -#include "base_settings.h" - -using namespace std; +#include "stg_logger.h" +#include "module_settings.h" //----------------------------------------------------------------------------- -enum DETAIL_STAT_PERIOD -{ +enum DETAIL_STAT_PERIOD { dsPeriod_1, dsPeriod_1_2, dsPeriod_1_4, @@ -56,71 +55,70 @@ dsPeriod_1_6, class STG_LOGGER; class DOTCONFDocumentNode; //----------------------------------------------------------------------------- -class SETTINGS -{ +class SETTINGS { public: SETTINGS(); SETTINGS(const std::string &); SETTINGS(const SETTINGS &); virtual ~SETTINGS(); - int Reload() { return ReadSettings(); }; + int Reload() { return ReadSettings(); } int ReadSettings(); - string GetStrError() const { return strError; }; - - int GetExecMsgKey() const { return stgExecMsgKey; }; - unsigned GetExecutersNum() const { return executersNum; }; - const string & GetDirName(int num) const { return dirName[num]; }; - const string & GetConfDir() const { return confDir; }; - const string & GetScriptDir() const { return scriptDir; }; - const string & GetRulesFileName() const { return rules; }; - const string & GetLogFileName() const { return logFile; }; - const string & GetPIDFileName() const { return pidFile; }; - unsigned GetDetailStatWritePeriod() const + std::string GetStrError() const { return strError; } + + int GetExecMsgKey() const { return stgExecMsgKey; } + unsigned GetExecutersNum() const { return executersNum; } + const std::string & GetDirName(int num) const { return dirName[num]; }; + const std::string & GetConfDir() const { return confDir; } + const std::string & GetScriptDir() const { return scriptDir; } + const std::string & GetRulesFileName() const { return rules; } + const std::string & GetLogFileName() const { return logFile; } + const std::string & GetPIDFileName() const { return pidFile; } + unsigned GetDetailStatWritePeriod() const { return detailStatWritePeriod; }; - unsigned GetStatWritePeriod() const { return statWritePeriod * 60; }; - unsigned GetDayFee() const { return dayFee; }; - bool GetFullFee() const { return fullFee; }; - unsigned GetDayResetTraff() const { return dayResetTraff; }; - bool GetSpreadFee() const { return spreadFee; }; - bool GetFreeMbAllowInet() const { return freeMbAllowInet; }; - bool GetDayFeeIsLastDay() const { return dayFeeIsLastDay; }; - bool GetWriteFreeMbTraffCost() const + unsigned GetStatWritePeriod() const { return statWritePeriod * 60; } + unsigned GetDayFee() const { return dayFee; } + bool GetFullFee() const { return fullFee; } + unsigned GetDayResetTraff() const { return dayResetTraff; } + bool GetSpreadFee() const { return spreadFee; } + bool GetFreeMbAllowInet() const { return freeMbAllowInet; } + bool GetDayFeeIsLastDay() const { return dayFeeIsLastDay; } + bool GetWriteFreeMbTraffCost() const { return writeFreeMbTraffCost; }; - bool GetShowFeeInCash() const { return showFeeInCash; }; - const string & GetMonitorDir() const { return monitorDir; }; - bool GetMonitoring() const { return monitoring; }; - unsigned GetMessageTimeout() const { return messageTimeout * 3600 * 24; }; + bool GetShowFeeInCash() const { return showFeeInCash; } + const std::string & GetMonitorDir() const { return monitorDir; } + bool GetMonitoring() const { return monitoring; } + unsigned GetMessageTimeout() const { return messageTimeout * 3600 * 24; } - const string & GetModulesPath() const { return modulesPath; }; + const std::string & GetModulesPath() const { return modulesPath; } const MODULE_SETTINGS & GetStoreModuleSettings() const - { return storeModuleSettings; }; - const vector & GetModulesSettings() const - { return modulesSettings; }; + { return storeModuleSettings; } + const std::vector & GetModulesSettings() const + { return modulesSettings; } private: - int ParseInt(const string & value, int * val); - int ParseUnsigned(const string & value, unsigned * val); - int ParseIntInRange(const string & value, int min, int max, int * val); - int ParseUnsignedInRange(const string & value, unsigned min, unsigned max, unsigned * val); - int ParseYesNo(const string & value, bool * val); - int ParseDetailStatWritePeriod(const string & detailStatPeriodStr); + int ParseInt(const std::string & value, int * val); + int ParseUnsigned(const std::string & value, unsigned * val); + int ParseIntInRange(const std::string & value, int min, int max, int * val); + int ParseUnsignedInRange(const std::string & value, unsigned min, unsigned max, unsigned * val); + int ParseYesNo(const std::string & value, bool * val); + int ParseDetailStatWritePeriod(const std::string & detailStatPeriodStr); - int ParseModuleSettings(const DOTCONFDocumentNode * dirNameNode, vector * params); + int ParseModuleSettings(const DOTCONFDocumentNode * dirNameNode, std::vector * params); static void ErrorCallback(void * data, const char * buf); - string strError; + std::string strError; //////////settings - string modulesPath; - string dirName[DIR_NUM]; - string confDir; - string scriptDir; - string rules; - string logFile; - string pidFile; - string monitorDir; + std::string modulesPath; + std::string dirName[DIR_NUM]; + std::string confDir; + std::string scriptDir; + std::string rules; + std::string logFile; + std::string pidFile; + std::string monitorDir; bool monitoring; unsigned detailStatWritePeriod; unsigned statWritePeriod; @@ -136,8 +134,8 @@ private: bool showFeeInCash; // ðÏËÁÚÙ×ÁÔØ ÐÏÌØÚÏ×ÁÔÅÌÀ áð ÎÅ ÓÞÅÔÕ É ÐÏÚ×ÏÌÑÔØ ÅÅ ÉÓÐÏÌØÚÏ×ÁÔØ unsigned messageTimeout; // ÷ÒÅÍÑ ÖÉÚÎÉ ÎÅÏÔÐÒÁ×ÌÅÎÎÏÇÏ ÓÏÏÂÝÅÎÉÑ × ÓÅËÕÎÄÁÈ - vector modulesSettings; - MODULE_SETTINGS storeModuleSettings; + std::vector modulesSettings; + MODULE_SETTINGS storeModuleSettings; STG_LOGGER & logger; }; diff --git a/projects/stargazer/store_loader.cpp b/projects/stargazer/store_loader.cpp index 11fd804f..f012acd4 100644 --- a/projects/stargazer/store_loader.cpp +++ b/projects/stargazer/store_loader.cpp @@ -77,8 +77,8 @@ if (!handle) isLoaded = true; -BASE_STORE * (*GetStore)(); -GetStore = (BASE_STORE * (*)())dlsym(handle, "GetStore"); +STORE * (*GetStore)(); +GetStore = (STORE * (*)())dlsym(handle, "GetStore"); if (!GetStore) { errorStr = "GetStore not found."; diff --git a/projects/stargazer/users_impl.cpp b/projects/stargazer/users_impl.cpp index 35237ba2..9faadeb3 100644 --- a/projects/stargazer/users_impl.cpp +++ b/projects/stargazer/users_impl.cpp @@ -52,7 +52,7 @@ extern const volatile time_t stgTime; //#define USERS_DEBUG 1 //----------------------------------------------------------------------------- -USERS_IMPL::USERS_IMPL(SETTINGS * s, BASE_STORE * st, TARIFFS * t, const ADMIN & sa) +USERS_IMPL::USERS_IMPL(SETTINGS * s, STORE * st, TARIFFS * t, const ADMIN & sa) : users(), usersToDelete(), userIPNotifiersBefore(), -- 2.44.2