diff options
author | brain <brain@e03df62e-2008-0410-955e-edbf42e46eb7> | 2007-01-07 22:01:00 +0000 |
---|---|---|
committer | brain <brain@e03df62e-2008-0410-955e-edbf42e46eb7> | 2007-01-07 22:01:00 +0000 |
commit | fe46f3c228ae993b59fbf5eca423c3171d90e1b3 (patch) | |
tree | 00e891232399b60adfe3a815b1a00ee2273da99d /src | |
parent | 2a5e6d416ff00d25230cee662b6e56e9a3d59f75 (diff) |
Document dns caching, add a "bool cached" to OnLookupComplete method in Resolver, and and add " -- cached" to end of 'looking up your host' string if their result is a cached result
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@6254 e03df62e-2008-0410-955e-edbf42e46eb7
Diffstat (limited to 'src')
-rw-r--r-- | src/dns.cpp | 4 | ||||
-rw-r--r-- | src/modules/extra/m_pgsql.cpp | 4 | ||||
-rw-r--r-- | src/modules/m_cgiirc.cpp | 2 | ||||
-rw-r--r-- | src/modules/m_dnsbl.cpp | 2 | ||||
-rw-r--r-- | src/modules/m_http_client.cpp | 2 | ||||
-rw-r--r-- | src/modules/m_spanningtree.cpp | 4 | ||||
-rw-r--r-- | src/modules/m_testcommand.cpp | 4 | ||||
-rw-r--r-- | src/users.cpp | 4 |
8 files changed, 13 insertions, 13 deletions
diff --git a/src/dns.cpp b/src/dns.cpp index a8aaa3fde..b7bdbca4e 100644 --- a/src/dns.cpp +++ b/src/dns.cpp @@ -914,7 +914,7 @@ void DNS::DelCache(const std::string &source) void Resolver::TriggerCachedResult() { if (CQ) - OnLookupComplete(CQ->data, time_left); + OnLookupComplete(CQ->data, time_left, true); } /** High level abstraction of dns used by application at large */ @@ -1060,7 +1060,7 @@ void DNS::HandleEvent(EventType et, int errornum) this->cache->insert(std::make_pair(res.original.c_str(), CachedQuery(res.result, res.ttl))); } - Classes[res.id]->OnLookupComplete(res.result, res.ttl); + Classes[res.id]->OnLookupComplete(res.result, res.ttl, false); delete Classes[res.id]; Classes[res.id] = NULL; } diff --git a/src/modules/extra/m_pgsql.cpp b/src/modules/extra/m_pgsql.cpp index d5041f6f7..72c107725 100644 --- a/src/modules/extra/m_pgsql.cpp +++ b/src/modules/extra/m_pgsql.cpp @@ -95,7 +95,7 @@ class SQLresolver : public Resolver { } - virtual void OnLookupComplete(const std::string &result, unsigned int ttl); + virtual void OnLookupComplete(const std::string &result, unsigned int ttl, bool cached); virtual void OnError(ResolverError e, const std::string &errormessage) { @@ -1240,7 +1240,7 @@ public: /* move this here to use AddConn, rather that than having the whole * module above SQLConn, since this is buggin me right now :/ */ -void SQLresolver::OnLookupComplete(const std::string &result, unsigned int ttl) +void SQLresolver::OnLookupComplete(const std::string &result, unsigned int ttl, bool cached) { host.ip = result; ((ModulePgSQL*)mod)->AddConn(host); diff --git a/src/modules/m_cgiirc.cpp b/src/modules/m_cgiirc.cpp index a5f0bca3e..437ce3190 100644 --- a/src/modules/m_cgiirc.cpp +++ b/src/modules/m_cgiirc.cpp @@ -54,7 +54,7 @@ class CGIResolver : public Resolver CGIResolver(Module* me, InspIRCd* ServerInstance, bool NotifyOpers, const std::string &source, bool forward, userrec* u, int userfd, const std::string &type, bool &cached) : Resolver(ServerInstance, source, forward ? DNS_QUERY_FORWARD : DNS_QUERY_REVERSE, cached, me), typ(type), theirfd(userfd), them(u), notify(NotifyOpers) { } - virtual void OnLookupComplete(const std::string &result, unsigned int ttl) + virtual void OnLookupComplete(const std::string &result, unsigned int ttl, bool cached) { /* Check the user still exists */ if ((them) && (them == ServerInstance->SE->GetRef(theirfd))) diff --git a/src/modules/m_dnsbl.cpp b/src/modules/m_dnsbl.cpp index a60c2eb0c..713924110 100644 --- a/src/modules/m_dnsbl.cpp +++ b/src/modules/m_dnsbl.cpp @@ -54,7 +54,7 @@ class DNSBLResolver : public Resolver ConfEntry = conf; } - virtual void OnLookupComplete(const std::string &result, unsigned int ttl) + virtual void OnLookupComplete(const std::string &result, unsigned int ttl, bool cached) { /* Check the user still exists */ if ((them) && (them == ServerInstance->SE->GetRef(theirfd))) diff --git a/src/modules/m_http_client.cpp b/src/modules/m_http_client.cpp index 6891aa972..d015661c0 100644 --- a/src/modules/m_http_client.cpp +++ b/src/modules/m_http_client.cpp @@ -60,7 +60,7 @@ class HTTPResolver : public Resolver { } - void OnLookupComplete(const string &result, unsigned int ttl) + void OnLookupComplete(const string &result, unsigned int ttl, bool cached) { socket->Connect(result); } diff --git a/src/modules/m_spanningtree.cpp b/src/modules/m_spanningtree.cpp index 6cc46f119..8fee962fa 100644 --- a/src/modules/m_spanningtree.cpp +++ b/src/modules/m_spanningtree.cpp @@ -3719,7 +3719,7 @@ class ServernameResolver : public Resolver /* Nothing in here, folks */ } - void OnLookupComplete(const std::string &result, unsigned int ttl) + void OnLookupComplete(const std::string &result, unsigned int ttl, bool cached) { /* Initiate the connection, now that we have an IP to use. * Passing a hostname directly to InspSocket causes it to @@ -3768,7 +3768,7 @@ class SecurityIPResolver : public Resolver { } - void OnLookupComplete(const std::string &result, unsigned int ttl) + void OnLookupComplete(const std::string &result, unsigned int ttl, bool cached) { ServerInstance->Log(DEBUG,"Security IP cache: Adding IP address '%s' for Link '%s'",result.c_str(),MyLink.Name.c_str()); Utils->ValidIPs.push_back(result); diff --git a/src/modules/m_testcommand.cpp b/src/modules/m_testcommand.cpp index 761196978..a3ae7aedf 100644 --- a/src/modules/m_testcommand.cpp +++ b/src/modules/m_testcommand.cpp @@ -31,9 +31,9 @@ class MyV6Resolver : public Resolver fw = forward; } - virtual void OnLookupComplete(const std::string &result, unsigned int ttl) + virtual void OnLookupComplete(const std::string &result, unsigned int ttl, bool cached) { - ServerInstance->Log(DEBUG,"*** RESOLVER COMPLETED %s LOOKUP, IP IS: '%s' TTL=%lu",fw ? "FORWARD" : "REVERSE", result.c_str(), ttl); + ServerInstance->Log(DEBUG,"*** RESOLVER COMPLETED %s LOOKUP, IP IS: '%s' TTL=%lu CACHED=%d",fw ? "FORWARD" : "REVERSE", result.c_str(), ttl, cached); } virtual void OnError(ResolverError e, const std::string &errormessage) diff --git a/src/users.cpp b/src/users.cpp index a42e86210..0e88c3de4 100644 --- a/src/users.cpp +++ b/src/users.cpp @@ -168,7 +168,7 @@ UserResolver::UserResolver(InspIRCd* Instance, userrec* user, std::string to_res this->bound_fd = user->GetFd(); } -void UserResolver::OnLookupComplete(const std::string &result, unsigned int ttl) +void UserResolver::OnLookupComplete(const std::string &result, unsigned int ttl, bool cached) { if ((!this->fwd) && (ServerInstance->SE->GetRef(this->bound_fd) == this->bound_user)) { @@ -211,7 +211,7 @@ void UserResolver::OnLookupComplete(const std::string &result, unsigned int ttl) if (*(hostname.c_str()) == ':') hostname = "0" + hostname; - this->bound_user->WriteServ("NOTICE Auth :*** Found your hostname (%s)", hostname.c_str()); + this->bound_user->WriteServ("NOTICE Auth :*** Found your hostname (%s)%s", hostname.c_str(), (cached ? " -- cached" : "")); this->bound_user->dns_done = true; strlcpy(this->bound_user->dhost, hostname.c_str(),64); strlcpy(this->bound_user->host, hostname.c_str(),64); |