summaryrefslogtreecommitdiff
path: root/src/users.cpp
diff options
context:
space:
mode:
authorPeter Powell <petpow@saberuk.com>2019-12-28 17:08:06 +0100
committerPeter Powell <petpow@saberuk.com>2019-12-28 17:33:49 +0100
commit4cc992f6c20354eef88b7652f268591daccb1b20 (patch)
tree102fdf339c718a964634fd6ef9484bcdece564b4 /src/users.cpp
parent52df21f646a803b85417a4b699b1be48c25fa566 (diff)
Ignore clients on ulined servers when reporting stats in LUSERS.
Diffstat (limited to 'src/users.cpp')
-rw-r--r--src/users.cpp6
1 files changed, 6 insertions, 0 deletions
diff --git a/src/users.cpp b/src/users.cpp
index 6c58f0617..82f2545f4 100644
--- a/src/users.cpp
+++ b/src/users.cpp
@@ -78,6 +78,9 @@ User::User(const std::string& uid, Server* srv, UserType type)
ServerInstance->Logs->Log("USERS", LOG_DEBUG, "New UUID for user: %s", uuid.c_str());
+ if (srv->IsULine())
+ ServerInstance->Users->uline_count++;
+
// Do not insert FakeUsers into the uuidlist so FindUUID() won't return them which is the desired behavior
if (type != USERTYPE_SERVER)
{
@@ -339,6 +342,9 @@ CullResult User::cull()
if (client_sa.family() != AF_UNSPEC)
ServerInstance->Users->RemoveCloneCounts(this);
+ if (server->IsULine() && ServerInstance->Users->uline_count)
+ ServerInstance->Users->uline_count--;
+
return Extensible::cull();
}