diff options
| author | littleblack111 <littleblack11111@gmail.com> | 2025-03-17 00:19:35 +0800 |
|---|---|---|
| committer | littleblack111 <littleblack11111@gmail.com> | 2025-03-20 23:45:01 +0800 |
| commit | 35cde25820fe9077dbc195d3b1485cd3fb82813f (patch) | |
| tree | 1932a1ba2e916a798c3a46e698e7d1bdaa49432d /src/sessionManager.hpp | |
| parent | ad4ae6449221edbbe5fcec9c366b1748fea2ba17 (diff) | |
feat: kick client (#6)
Diffstat (limited to 'src/sessionManager.hpp')
| -rw-r--r-- | src/sessionManager.hpp | 7 |
1 files changed, 5 insertions, 2 deletions
diff --git a/src/sessionManager.hpp b/src/sessionManager.hpp index 21c47b9..79fa372 100644 --- a/src/sessionManager.hpp +++ b/src/sessionManager.hpp @@ -15,13 +15,16 @@ class CSessionManager { void run(); void broadcast(const std::string &msg) const; - void kick(const CSession *session) const; + void kick(const CSession *session, const std::string &reason = "") const; void addSession(const CSession &session); - void removeSession(std::pair<std::jthread, std::shared_ptr<CSession>> *session); + void removeSession(std::pair<std::jthread, std::shared_ptr<CSession>> *session, const bool &kill = false); bool nameExists(const std::string &name); void shutdownSessions(); + const CSession *getByName(const std::string &name) const; + const CSession *getByIp(const char m_ip[INET_ADDRSTRLEN]) const; + private: void broadcastChat(const std::string &msg, const std::string &username) const; |
