diff options
| -rw-r--r-- | include/libsock/server/client.hpp | 4 | ||||
| -rw-r--r-- | src/server/client.cpp | 6 | ||||
| -rw-r--r-- | src/server/clients.cpp | 20 |
3 files changed, 3 insertions, 27 deletions
diff --git a/include/libsock/server/client.hpp b/include/libsock/server/client.hpp index 59870ce..3ed4516 100644 --- a/include/libsock/server/client.hpp +++ b/include/libsock/server/client.hpp @@ -39,7 +39,6 @@ class Client { Client(SP<Server> server = SP<Server>(pServer), SP<Clients> clients = pClients, bool track = false, bool oneShot = true); ~Client(); - const std::string &getName() const; const std::string &getIp() const; bool isAdmin() const; @@ -58,7 +57,6 @@ class Client { SP<LibSock::CFileDescriptor> m_sockfd; sockaddr_in m_addr; socklen_t m_addrLen = sizeof(m_addr); - std::string m_name; std::string m_ip; int m_port; bool m_track; @@ -88,10 +86,8 @@ class Clients { void kick(WP<Client> client, const bool kill = false, const std::string &reason = "", std::optional<std::function<std::any(const std::vector<std::pair<std::jthread, SP<Client>>>::iterator &)>> cb = std::nullopt); void addClient(const Client &client); - bool nameExists(const std::string &name); void shutdownClients(std::optional<std::function<std::any(const std::vector<std::pair<std::jthread, SP<Client>>> &)>> cb = std::nullopt); - SP<Client> getByName(const std::string &name) const; SP<Client> getByIp(const std::string &ip) const; std::vector<SP<Client>> getClients() const; std::vector<SData> getDatas() const; diff --git a/src/server/client.cpp b/src/server/client.cpp index f8dc1ca..e5fab6b 100644 --- a/src/server/client.cpp +++ b/src/server/client.cpp @@ -41,7 +41,7 @@ Client::~Client() { void Client::recvLoop() { while (true) { - auto recvData = read(std::format("{}: ", m_name)); + auto recvData = read(); if (!recvData->good) break; @@ -114,7 +114,7 @@ void Client::run() { } bool Client::isValid() { - if (!m_sockfd->isValid() || m_name.empty()) + if (!m_sockfd->isValid()) return false; int err = 0; @@ -135,8 +135,6 @@ bool Client::write(const std::string &msg, std::optional<std::function<std::any( return r; } -const std::string &Client::getName() const { return m_name; } - const std::string &Client::getIp() const { return m_ip; } template <typename... Args> diff --git a/src/server/clients.cpp b/src/server/clients.cpp index 1a11ed7..4d6308e 100644 --- a/src/server/clients.cpp +++ b/src/server/clients.cpp @@ -68,24 +68,6 @@ void Clients::broadcast(const SData &msg) { m_vDatas.push_back(msg); } -bool Clients::nameExists(const std::string &name) { - auto it = std::ranges::find_if(m_vClients, [&name](const auto &s) { return s.second->getName() == name; }); - - if (it != m_vClients.end()) { - if (!it->second->isValid()) { - kick(std::weak_ptr<Client>(it->second), true, "Connection lost"); - return false; - } - return true; - } - return false; -} - -SP<Client> Clients::getByName(const std::string &name) const { - auto it = std::ranges::find_if(m_vClients, [&name](const auto &s) { return s.second->getName() == name; }); - return it != m_vClients.end() ? it->second : nullptr; -} - SP<Client> Clients::getByIp(const std::string &ip) const { auto it = std::ranges::find_if(m_vClients, [&ip](const auto &s) { return s.second->getIp() == ip; }); return it != m_vClients.end() ? it->second : nullptr; @@ -106,7 +88,7 @@ void Clients::kick(WP<Client> clientWeak, const bool kill, const std::string &re for (auto it = m_vClients.begin(); it != m_vClients.end(); ++it) { if (it->second == client) { - if (client && !client->getName().empty()) + if (client) // this only exist when the client is registered // not sure why the second is null if (cb) |
