X-Git-Url: https://git.netwichtig.de/gitweb/?a=blobdiff_plain;f=include%2Fusermanager.h;h=df13124677c75a8d68831f4021b2c9dad257b57f;hb=44489ddf7e90413d8f656aea24d74445bab227af;hp=531d50773a2f108e532ffd0de3ce18683d5c6a82;hpb=565544fac966b14e046bb3042ab485f79bcf7c9e;p=user%2Fhenk%2Fcode%2Finspircd.git diff --git a/include/usermanager.h b/include/usermanager.h index 531d50773..df1312467 100644 --- a/include/usermanager.h +++ b/include/usermanager.h @@ -1,6 +1,13 @@ /* * InspIRCd -- Internet Relay Chat Daemon * + * Copyright (C) 2015 Adam + * Copyright (C) 2013-2016 Attila Molnar + * Copyright (C) 2012-2013, 2017, 2019-2020 Sadie Powell + * Copyright (C) 2012 Robby + * Copyright (C) 2010 Craig Edwards + * Copyright (C) 2009 Daniel De Graaf + * Copyright (C) 2008 Thomas Stagner * Copyright (C) 2008 Robin Burchell * * This file is part of InspIRCd. InspIRCd is free software: you can @@ -39,6 +46,9 @@ class CoreExport UserManager : public fakederef */ typedef std::vector OperList; + /** A list containing users who are on a U-lined servers. */ + typedef std::vector ULineList; + /** A list holding local users */ typedef insp::intrusive_list LocalList; @@ -82,6 +92,9 @@ class CoreExport UserManager : public fakederef */ 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) */ @@ -92,12 +105,6 @@ class CoreExport UserManager : public fakederef */ void DoBackgroundUserStuff(); - /** Returns true when all modules have done pre-registration checks on a user - * @param user The user to verify - * @return True if all modules have finished checking this user - */ - bool AllModulesReportReady(LocalUser* user); - /** Handle a client connection. * Creates a new LocalUser object, inserts it into the appropriate containers, * initializes it as not yet registered, and adds it to the socket engine. @@ -143,7 +150,7 @@ class CoreExport UserManager : public fakederef */ 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; } @@ -156,7 +163,7 @@ class CoreExport UserManager : public fakederef /** 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 @@ -168,6 +175,11 @@ class CoreExport UserManager : public fakederef */ 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 */