X-Git-Url: https://git.netwichtig.de/gitweb/?a=blobdiff_plain;f=include%2Fusermanager.h;h=2a9d6b47b2b9ca54c893ba75a07bbe296a74f9e9;hb=9c6a2d1b5ba5a2aeb91d00e1115534fbde670841;hp=92b40b373ba6b595768f40180945e6c6b04bd6c5;hpb=808a0a09577009c2d6e494979c2189426b332aef;p=user%2Fhenk%2Fcode%2Finspircd.git diff --git a/include/usermanager.h b/include/usermanager.h index 92b40b373..2a9d6b47b 100644 --- a/include/usermanager.h +++ b/include/usermanager.h @@ -32,6 +32,8 @@ class CoreExport UserManager */ clonemap local_clones; public: + UserManager(); + ~UserManager() { for (user_hash::iterator i = clientlist->begin();i != clientlist->end();i++) @@ -52,9 +54,9 @@ class CoreExport UserManager */ user_hash* uuidlist; - /** Local client list, a vector containing only local clients + /** Local client list, a list containing only local clients */ - std::vector local_users; + LocalUserList local_users; /** Oper list, a vector containing all local and remote opered users */ @@ -63,7 +65,11 @@ class CoreExport UserManager /** Number of unregistered users online right now. * (Unregistered means before USER/NICK/dns) */ - int unregistered_count; + unsigned int unregistered_count; + + /** Number of elements in local_users + */ + unsigned int local_count; /** Map of global ip addresses for clone counting * XXX - this should be private, but m_clones depends on it currently. @@ -106,6 +112,10 @@ class CoreExport UserManager */ void RemoveCloneCounts(User *user); + /** Rebuild clone counts + */ + void RehashCloneCounts(); + /** Return the number of global clones of this user * @param user The user to get a count for * @return The global clone count of this user