X-Git-Url: https://git.stg.codes/stg.git/blobdiff_plain/0907aa4037b12b6b88ee24495d4577a064d4f8db..c59911ca3cd38cf4ab36d2cc62686f97395899f9:/projects/stargazer/plugins/authorization/inetaccess/inetaccess.h diff --git a/projects/stargazer/plugins/authorization/inetaccess/inetaccess.h b/projects/stargazer/plugins/authorization/inetaccess/inetaccess.h index 83e4d7a5..f9137c20 100644 --- a/projects/stargazer/plugins/authorization/inetaccess/inetaccess.h +++ b/projects/stargazer/plugins/authorization/inetaccess/inetaccess.h @@ -41,9 +41,13 @@ #include #include #include +#include +#pragma GCC diagnostic push +#pragma GCC diagnostic ignored "-Wshadow" +#include +#pragma GCC diagnostic pop #include -#include //#define IA_DEBUG (1) //#define IA_PHASE_DEBUG (1) @@ -116,9 +120,9 @@ struct IA_USER { protoVer(0), password("NO PASSWORD") { - unsigned char keyL[PASSWD_LEN]; + char keyL[PASSWD_LEN]; memset(keyL, 0, PASSWD_LEN); - strncpy((char *)keyL, password.c_str(), PASSWD_LEN); + strncpy(keyL, password.c_str(), PASSWD_LEN); Blowfish_Init(&ctx, keyL, PASSWD_LEN); #ifdef IA_DEBUG @@ -157,9 +161,9 @@ struct IA_USER { protoVer(ver), password(user->GetProperties().password.Get()) { - unsigned char keyL[PASSWD_LEN]; + char keyL[PASSWD_LEN]; memset(keyL, 0, PASSWD_LEN); - strncpy((char *)keyL, password.c_str(), PASSWD_LEN); + strncpy(keyL, password.c_str(), PASSWD_LEN); Blowfish_Init(&ctx, keyL, PASSWD_LEN); #ifdef IA_DEBUG @@ -214,7 +218,7 @@ public: explicit DEL_USER_NOTIFIER(AUTH_IA & a) : auth(a) {} virtual ~DEL_USER_NOTIFIER() {} - void Notify(const UserPtr & user); + void notify(const UserPtr & user) override; private: DEL_USER_NOTIFIER(const DEL_USER_NOTIFIER & rvalue); DEL_USER_NOTIFIER & operator=(const DEL_USER_NOTIFIER & rvalue); @@ -249,8 +253,8 @@ private: AUTH_IA(const AUTH_IA & rvalue); AUTH_IA & operator=(const AUTH_IA & rvalue); - static void * Run(void *); - static void * RunTimeouter(void * d); + void Run(std::stop_token token); + void RunTimeouter(std::stop_token token); int PrepareNet(); int FinalizeNet(); void DelUser(UserPtr u); @@ -306,7 +310,7 @@ private: int Timeouter(); int SendError(uint32_t ip, uint16_t port, int protoVer, const std::string & text); - int Send(uint32_t ip, uint16_t port, const char * buffer, size_t len); + int Send(uint32_t ip, uint16_t port, const void* buffer, size_t len); int RealSendMessage6(const STG::Message & msg, uint32_t ip, IA_USER & user); int RealSendMessage7(const STG::Message & msg, uint32_t ip, IA_USER & user); int RealSendMessage8(const STG::Message & msg, uint32_t ip, IA_USER & user); @@ -317,8 +321,6 @@ private: AUTH_IA_SETTINGS iaSettings; STG::ModuleSettings settings; - bool nonstop; - bool isRunningRun; bool isRunningRunTimeouter; @@ -327,9 +329,9 @@ private: mutable std::map ip2user; - pthread_t recvThread; - pthread_t timeouterThread; - mutable pthread_mutex_t mutex; + std::jthread m_thread; + std::jthread m_timeouterThread; + mutable std::mutex m_mutex; int listenSocket; @@ -370,7 +372,7 @@ class UnauthorizeUser : std::unary_function & }; //----------------------------------------------------------------------------- inline -void DEL_USER_NOTIFIER::Notify(const UserPtr & user) +void DEL_USER_NOTIFIER::notify(const UserPtr & user) { auth.DelUser(user); }