X-Git-Url: https://git.stg.codes/stg.git/blobdiff_plain/3a45cd9275dc9279e133deb0932402ae5f4d0b5f..3efab3e6baa3404fe596e927bdb1b4b27a4ba43f:/projects/stargazer/plugins/configuration/rpcconfig/rpcconfig.h diff --git a/projects/stargazer/plugins/configuration/rpcconfig/rpcconfig.h b/projects/stargazer/plugins/configuration/rpcconfig/rpcconfig.h index 1213f7d3..87ef9470 100644 --- a/projects/stargazer/plugins/configuration/rpcconfig/rpcconfig.h +++ b/projects/stargazer/plugins/configuration/rpcconfig/rpcconfig.h @@ -30,11 +30,12 @@ class RPC_CONFIG_SETTINGS { public: RPC_CONFIG_SETTINGS(); - virtual ~RPC_CONFIG_SETTINGS() {}; - const std::string & GetStrError() const { return errorStr; }; + virtual ~RPC_CONFIG_SETTINGS() {} + const std::string & GetStrError() const { return errorStr; } int ParseSettings(const MODULE_SETTINGS & s); - uint16_t GetPort() const { return port; }; - double GetCookieTimeout() const { return cookieTimeout; }; + uint16_t GetPort() const { return port; } + double GetCookieTimeout() const { return cookieTimeout; } + private: std::string errorStr; int port; @@ -43,6 +44,12 @@ private: struct ADMIN_INFO { + ADMIN_INFO() + : admin(), + accessTime(0), + priviledges() + {} + std::string admin; time_t accessTime; PRIV priviledges; @@ -58,7 +65,6 @@ public: void SetTariffs(TARIFFS * t) { tariffs = t; } void SetAdmins(ADMINS * a) { admins = a; } void SetStore(STORE * s) { store = s; } - void SetTraffcounter(TRAFFCOUNTER *) {} void SetStgSettings(const SETTINGS * s); void SetSettings(const MODULE_SETTINGS & s) { settings = s; } int ParseSettings(); @@ -81,6 +87,9 @@ public: bool LogoutAdmin(const std::string & cookie); private: + RPC_CONFIG(const RPC_CONFIG & rvalue); + RPC_CONFIG & operator=(const RPC_CONFIG & rvalue); + static void * Run(void *); std::string GetCookie() const; void InitiateRegistry(); @@ -92,6 +101,7 @@ private: TARIFFS * tariffs; STORE * store; MODULE_SETTINGS settings; + int fd; xmlrpc_c::registry rpcRegistry; xmlrpc_c::serverAbyss * rpcServer; bool running;