X-Git-Url: https://git.stg.codes/stg.git/blobdiff_plain/34ef822e81b9f236b2f5edf52d351a0f82d59a0c..3cc6c36fcf3f0c6449debeb56e53c2ede03efc26:/projects/sgauthstress/proto.h?ds=sidebyside diff --git a/projects/sgauthstress/proto.h b/projects/sgauthstress/proto.h index 879e7a35..a63a4f90 100644 --- a/projects/sgauthstress/proto.h +++ b/projects/sgauthstress/proto.h @@ -6,6 +6,7 @@ #include #include +#include #include #include "stg/os_int.h" @@ -30,17 +31,19 @@ class PROTO { const std::string GetStrError() const { return errorStr; } - void AddUser(const USER & user); + void AddUser(const USER & user, bool connect = false); bool Connect(uint32_t ip); bool Disconnect(uint32_t ip); + + size_t UserCount() const { return users.size(); } private: BLOWFISH_CTX ctx; struct sockaddr_in localAddr; struct sockaddr_in serverAddr; int timeout; - std::map users; + std::vector > users; std::vector pollFds; bool running; @@ -71,6 +74,9 @@ class PROTO { bool Send_DISCONN_SYN(USER * user); bool Send_DISCONN_ACK(USER * user); bool Send_ALIVE_ACK(USER * user); + + bool RealConnect(USER * user); + bool RealDisconnect(USER * user); }; #endif