diff options
author | brain <brain@e03df62e-2008-0410-955e-edbf42e46eb7> | 2007-01-08 00:18:52 +0000 |
---|---|---|
committer | brain <brain@e03df62e-2008-0410-955e-edbf42e46eb7> | 2007-01-08 00:18:52 +0000 |
commit | bf3acfa61d702eef0303bc4743592669cebebabf (patch) | |
tree | 58121680fe56f229554a50219e6a11ff1d121505 /src/dns.cpp | |
parent | 2bd5a5b5a268351e179bea928a44c546a442a1a2 (diff) |
Add /CLEARCACHE, oper only command which completely purges the DNS cache -- useful if you just want to cut down on ram use at any point.
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@6259 e03df62e-2008-0410-955e-edbf42e46eb7
Diffstat (limited to 'src/dns.cpp')
-rw-r--r-- | src/dns.cpp | 9 |
1 files changed, 9 insertions, 0 deletions
diff --git a/src/dns.cpp b/src/dns.cpp index 844077cf4..cea1c4a43 100644 --- a/src/dns.cpp +++ b/src/dns.cpp @@ -253,6 +253,15 @@ DNSRequest* DNS::AddQuery(DNSHeader *header, int &id, const char* original) return req; } +int DNS::ClearCache() +{ + /* This ensures the buckets are reset to sane levels */ + int rv = this->cache->size(); + delete this->cache; + this->cache = new dnscache(); + return rv; +} + void DNS::Rehash() { insp_inaddr addr; |