From 06938e336ea07128682fe074740a8f930c503caf Mon Sep 17 00:00:00 2001 From: Maxim Mamontov Date: Thu, 15 Sep 2011 18:02:44 +0300 Subject: [PATCH] Hide or add proper copy ctor and assignement operator, initialize members via initialization lists in radius code --- .../stargazer/plugins/other/radius/radius.cpp | 55 ++++--------------- .../stargazer/plugins/other/radius/radius.h | 27 +++++---- 2 files changed, 29 insertions(+), 53 deletions(-) diff --git a/projects/stargazer/plugins/other/radius/radius.cpp b/projects/stargazer/plugins/other/radius/radius.cpp index efa99570..62c9305c 100644 --- a/projects/stargazer/plugins/other/radius/radius.cpp +++ b/projects/stargazer/plugins/other/radius/radius.cpp @@ -121,36 +121,26 @@ return 0; //----------------------------------------------------------------------------- //----------------------------------------------------------------------------- RADIUS::RADIUS() - : nonstop(false), + : ctx(), + errorStr(), + radSettings(), + settings(), + authServices(), + acctServices(), + sessions(), + nonstop(false), isRunning(false), users(NULL), stgSettings(NULL), store(NULL), - sock(-1) + thread(), + mutex(), + sock(-1), + packet() { InitEncrypt(&ctx, ""); } //----------------------------------------------------------------------------- -void RADIUS::SetUsers(USERS * u) -{ -users = u; -} -//----------------------------------------------------------------------------- -void RADIUS::SetStgSettings(const SETTINGS * s) -{ -stgSettings = s; -} -//----------------------------------------------------------------------------- -void RADIUS::SetSettings(const MODULE_SETTINGS & s) -{ -settings = s; -} -//----------------------------------------------------------------------------- -void RADIUS::SetStore(STORE * s) -{ -store = s; -} -//----------------------------------------------------------------------------- int RADIUS::ParseSettings() { int ret = radSettings.ParseSettings(settings); @@ -159,27 +149,6 @@ if (ret) return ret; } //----------------------------------------------------------------------------- -bool RADIUS::IsRunning() -{ -return isRunning; -} -//----------------------------------------------------------------------------- -const std::string RADIUS::GetVersion() const -{ -return "RADIUS data access plugin v 0.6"; -} -//----------------------------------------------------------------------------- -uint16_t RADIUS::GetStartPosition() const -{ -// Start before any authorizers!!! -return 20; -} -//----------------------------------------------------------------------------- -uint16_t RADIUS::GetStopPosition() const -{ -return 20; -} -//----------------------------------------------------------------------------- int RADIUS::PrepareNet() { sock = socket(AF_INET, SOCK_DGRAM, 0); diff --git a/projects/stargazer/plugins/other/radius/radius.h b/projects/stargazer/plugins/other/radius/radius.h index 43484907..731753a0 100644 --- a/projects/stargazer/plugins/other/radius/radius.h +++ b/projects/stargazer/plugins/other/radius/radius.h @@ -56,7 +56,10 @@ class RADIUS; //----------------------------------------------------------------------------- class RAD_SETTINGS { public: - RAD_SETTINGS() : port(0) {} + RAD_SETTINGS() + : port(0), errorStr(), password(), + authServices(), acctServices() + {} virtual ~RAD_SETTINGS() {} const string & GetStrError() const { return errorStr; } int ParseSettings(const MODULE_SETTINGS & s); @@ -76,6 +79,7 @@ private: }; //----------------------------------------------------------------------------- struct RAD_SESSION { + RAD_SESSION() : userName(), serviceType() {} std::string userName; std::string serviceType; }; @@ -83,27 +87,30 @@ struct RAD_SESSION { class RADIUS :public AUTH { public: RADIUS(); - virtual ~RADIUS() {}; + virtual ~RADIUS() {} - void SetUsers(USERS * u); - void SetStore(STORE * ); - void SetStgSettings(const SETTINGS * s); - void SetSettings(const MODULE_SETTINGS & s); + void SetUsers(USERS * u) { users = u; } + void SetStore(STORE * s) { store = s; } + void SetStgSettings(const SETTINGS *) {} + void SetSettings(const MODULE_SETTINGS & s) { settings = s; } int ParseSettings(); int Start(); int Stop(); int Reload() { return 0; } - bool IsRunning(); + bool IsRunning() { return isRunning; } const std::string & GetStrError() const { return errorStr; } - const std::string GetVersion() const; - uint16_t GetStartPosition() const; - uint16_t GetStopPosition() const; + const std::string GetVersion() const { return "RADIUS data access plugin v 0.6"; } + uint16_t GetStartPosition() const { return 20; } + uint16_t GetStopPosition() const { return 20; } int SendMessage(const STG_MSG &, uint32_t) const { return 0; } private: + RADIUS(const RADIUS & rvalue); + RADIUS & operator=(const RADIUS & rvalue); + static void * Run(void *); int PrepareNet(); int FinalizeNet(); -- 2.44.2