summaryrefslogtreecommitdiff
path: root/include/inspircd.h
diff options
context:
space:
mode:
Diffstat (limited to 'include/inspircd.h')
-rw-r--r--include/inspircd.h10
1 files changed, 8 insertions, 2 deletions
diff --git a/include/inspircd.h b/include/inspircd.h
index 9f2ae630a..3d9002f53 100644
--- a/include/inspircd.h
+++ b/include/inspircd.h
@@ -401,11 +401,11 @@ class InspIRCd : public classbase
/** Client list, a hash_map containing all clients, local and remote
*/
- user_hash clientlist;
+ user_hash* clientlist;
/** Channel list, a hash_map containing all channels
*/
- chan_hash chanlist;
+ chan_hash* chanlist;
/** Local client list, a vector containing only local clients
*/
@@ -1129,6 +1129,12 @@ class InspIRCd : public classbase
*/
void Cleanup();
+ /** This copies the user and channel hash_maps into new hash maps.
+ * This frees memory used by the hash_map allocator (which it neglects
+ * to free, most of the time, using tons of ram)
+ */
+ void RehashUsersAndChans();
+
/** Begin execution of the server.
* NOTE: this function NEVER returns. Internally,
* after performing some initialisation routines,