- /** 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
+ /** Rebuild clone counts. Required when \<cidr> settings change.
+ */
+ void RehashCloneCounts();
+
+ /** Return the number of local and global clones of this user
+ * @param user The user to get the clone counts for
+ * @return The clone counts of this user. The returned reference is volatile - you
+ * must assume that it becomes invalid as soon as you call any function other than
+ * your own.
+ */
+ const CloneCounts& GetCloneCounts(User* user) const;
+
+ /** Return a map containing IP addresses and their clone counts
+ * @return The clone count map