]> git.netwichtig.de Git - user/henk/code/inspircd.git/blobdiff - include/usermanager.h
Remove the Kiwi links from the readme.
[user/henk/code/inspircd.git] / include / usermanager.h
index c013e59aeab343463bfef2ac374021471fd639de..e73d541ee81b69225895c02c2972f3644a8355de 100644 (file)
@@ -1,6 +1,13 @@
 /*
  * InspIRCd -- Internet Relay Chat Daemon
  *
+ *   Copyright (C) 2015 Adam <Adam@anope.org>
+ *   Copyright (C) 2012-2016 Attila Molnar <attilamolnar@hush.com>
+ *   Copyright (C) 2012-2013, 2017, 2019-2020 Sadie Powell <sadie@witchery.services>
+ *   Copyright (C) 2012 Robby <robby@chatbelgie.be>
+ *   Copyright (C) 2010 Craig Edwards <brain@inspircd.org>
+ *   Copyright (C) 2009 Daniel De Graaf <danieldg@inspircd.org>
+ *   Copyright (C) 2008 Thomas Stagner <aquanight@inspircd.org>
  *   Copyright (C) 2008 Robin Burchell <robin+git@viroteck.net>
  *
  * This file is part of InspIRCd.  InspIRCd is free software: you can
@@ -39,6 +46,9 @@ class CoreExport UserManager : public fakederef<UserManager>
         */
        typedef std::vector<User*> OperList;
 
+       /** A list containing users who are on a U-lined servers. */
+       typedef std::vector<User*> ULineList;
+
        /** A list holding local users
        */
        typedef insp::intrusive_list<LocalUser> LocalList;
@@ -82,6 +92,9 @@ class CoreExport UserManager : public fakederef<UserManager>
         */
        OperList all_opers;
 
+       /** A list of users on U-lined servers. */
+       ULineList all_ulines;
+
        /** Number of unregistered users online right now.
         * (Unregistered means before USER/NICK/dns)
         */
@@ -137,7 +150,7 @@ class CoreExport UserManager : public fakederef<UserManager>
         */
        const CloneCounts& GetCloneCounts(User* user) const;
 
-       /** Return a map containg IP addresses and their clone counts
+       /** Return a map containing IP addresses and their clone counts
         * @return The clone count map
         */
        const CloneMap& GetCloneMap() const { return clonemap; }
@@ -150,7 +163,7 @@ class CoreExport UserManager : public fakederef<UserManager>
        /** Return a count of fully registered connections on the network
         * @return The number of registered users on the network
         */
-       unsigned int RegisteredUserCount() { return this->clientlist.size() - this->UnregisteredUserCount(); }
+       unsigned int RegisteredUserCount() { return this->clientlist.size() - this->UnregisteredUserCount() - this->ULineCount(); }
 
        /** Return a count of opered (umode +o) users on the network
         * @return The number of opers on the network
@@ -162,6 +175,11 @@ class CoreExport UserManager : public fakederef<UserManager>
         */
        unsigned int UnregisteredUserCount() const { return this->unregistered_count; }
 
+       /** Return a count of users on a u-lined servers.
+        * @return The number of users on u-lined servers.
+        */
+       unsigned int ULineCount() const { return this->all_ulines.size(); }
+
        /** Return a count of local registered users
         * @return The number of registered local users
         */