X-Git-Url: https://git.stg.codes/stg.git/blobdiff_plain/ede91934442fd804d7b818971a44e3ad795cb01f..f33655defbdef7570c05d258ba8b117a58de0487:/projects/stargazer/plugins/other/radius/radius.h diff --git a/projects/stargazer/plugins/other/radius/radius.h b/projects/stargazer/plugins/other/radius/radius.h index 26f70aa4..8281b1ae 100644 --- a/projects/stargazer/plugins/other/radius/radius.h +++ b/projects/stargazer/plugins/other/radius/radius.h @@ -38,15 +38,16 @@ #include #include -#include "os_int.h" -#include "auth.h" -#include "module_settings.h" -#include "notifer.h" -#include "user_ips.h" -#include "user.h" -#include "users.h" -#include "blowfish.h" -#include "rad_packets.h" +#include "stg/os_int.h" +#include "stg/auth.h" +#include "stg/module_settings.h" +#include "stg/notifer.h" +#include "stg/user_ips.h" +#include "stg/user.h" +#include "stg/users.h" +#include "stg/blowfish.h" +#include "stg/rad_packets.h" +#include "stg/logger.h" extern "C" PLUGIN * GetPlugin(); @@ -56,7 +57,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); @@ -66,7 +70,6 @@ public: const std::list & GetAcctServices() const { return acctServices; } private: - int ParseIntInRange(const std::string & str, int min, int max, int * val); int ParseServices(const std::vector & str, std::list * lst); uint16_t port; @@ -77,6 +80,7 @@ private: }; //----------------------------------------------------------------------------- struct RAD_SESSION { + RAD_SESSION() : userName(), serviceType() {} std::string userName; std::string serviceType; }; @@ -84,30 +88,30 @@ struct RAD_SESSION { class RADIUS :public AUTH { public: RADIUS(); - virtual ~RADIUS() {}; - - void SetUsers(USERS * u); - void SetTariffs(TARIFFS *) {} - void SetAdmins(ADMINS *) {} - void SetTraffcounter(TRAFFCOUNTER *) {} - void SetStore(STORE * ); - void SetStgSettings(const SETTINGS * s); - void SetSettings(const MODULE_SETTINGS & s); + virtual ~RADIUS() {} + + 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 30; } + uint16_t GetStopPosition() const { return 30; } 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(); @@ -129,8 +133,6 @@ private: bool CanAcctService(const std::string & svc) const; bool IsAllowedService(const std::string & svc) const; - bool WaitPackets(int sd) const; - void PrintServices(const std::list & svcs); struct Printer : public unary_function @@ -171,6 +173,7 @@ private: RAD_PACKET packet; + PLUGIN_LOGGER logger; }; //-----------------------------------------------------------------------------