diff options
| author | 2007-01-07 21:16:03 +0000 | |
|---|---|---|
| committer | 2007-01-07 21:16:03 +0000 | |
| commit | dac672cf303ce44dc5f877a5f9f7e5aee64b95e1 (patch) | |
| tree | 3484e7870d732dd04a590640cfe5c72ea50e7dde /src/modules/m_dnsbl.cpp | |
| parent | Move all /WHOWAS related out of core and into cmd_whowas. (diff) | |
DNS Stuff - this wont work right yet, it will soon (tm)
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@6250 e03df62e-2008-0410-955e-edbf42e46eb7
Diffstat (limited to 'src/modules/m_dnsbl.cpp')
| -rw-r--r-- | src/modules/m_dnsbl.cpp | 12 |
1 files changed, 8 insertions, 4 deletions
diff --git a/src/modules/m_dnsbl.cpp b/src/modules/m_dnsbl.cpp index 91bfa5131..d6581a7d1 100644 --- a/src/modules/m_dnsbl.cpp +++ b/src/modules/m_dnsbl.cpp @@ -46,8 +46,8 @@ class DNSBLResolver : public Resolver DNSBLConfEntry *ConfEntry; public: - DNSBLResolver(Module *me, InspIRCd *ServerInstance, const std::string &hostname, userrec* u, int userfd, DNSBLConfEntry *conf) - : Resolver(ServerInstance, hostname, DNS_QUERY_A, me) + DNSBLResolver(Module *me, InspIRCd *ServerInstance, const std::string &hostname, userrec* u, int userfd, DNSBLConfEntry *conf, bool &cached) + : Resolver(ServerInstance, hostname, DNS_QUERY_A, cached, me) { theirfd = userfd; them = u; @@ -307,8 +307,12 @@ class ModuleDNSBL : public Module ServerInstance->Log(DEBUG, "m_dnsbl: sending %s for resolution", hostname.c_str()); /* now we'd need to fire off lookups for `hostname'. */ - DNSBLResolver *r = new DNSBLResolver(this, ServerInstance, hostname, user, user->GetFd(), *i); - ServerInstance->AddResolver(r); + bool cached; + DNSBLResolver *r = new DNSBLResolver(this, ServerInstance, hostname, user, user->GetFd(), *i, cached); + if (!cached) + ServerInstance->AddResolver(r); + else + delete r; } } |
