From df4f0dc888a2a24e7f8b42a1c21670679e633506 Mon Sep 17 00:00:00 2001 From: brain Date: Sun, 19 Aug 2007 16:00:57 +0000 Subject: Allow support for multiple dns results per request. This is a significant change and should probably not be backported to stable. This will allow for a fix to feature request bug #384 git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@7753 e03df62e-2008-0410-955e-edbf42e46eb7 --- src/modules/m_spanningtree/resolvers.cpp | 5 ++++- src/modules/m_spanningtree/resolvers.h | 4 ++-- 2 files changed, 6 insertions(+), 3 deletions(-) (limited to 'src/modules/m_spanningtree') diff --git a/src/modules/m_spanningtree/resolvers.cpp b/src/modules/m_spanningtree/resolvers.cpp index 0d94da99f..ac14833a5 100644 --- a/src/modules/m_spanningtree/resolvers.cpp +++ b/src/modules/m_spanningtree/resolvers.cpp @@ -43,8 +43,11 @@ ServernameResolver::ServernameResolver(Module* me, SpanningTreeUtilities* Util, /* Nothing in here, folks */ } -void ServernameResolver::OnLookupComplete(const std::string &result, unsigned int ttl, bool cached) +void ServernameResolver::OnLookupComplete(const std::string &result, unsigned int ttl, bool cached, int resultnum) { + if (resultnum) + return; + /* Initiate the connection, now that we have an IP to use. * Passing a hostname directly to InspSocket causes it to * just bail and set its FD to -1. diff --git a/src/modules/m_spanningtree/resolvers.h b/src/modules/m_spanningtree/resolvers.h index 06fd05bad..53adaa50f 100644 --- a/src/modules/m_spanningtree/resolvers.h +++ b/src/modules/m_spanningtree/resolvers.h @@ -45,7 +45,7 @@ class SecurityIPResolver : public Resolver { } - void OnLookupComplete(const std::string &result, unsigned int ttl, bool cached) + void OnLookupComplete(const std::string &result, unsigned int ttl, bool cached, int resultnum = 0) { Utils->ValidIPs.push_back(result); } @@ -83,7 +83,7 @@ class ServernameResolver : public Resolver Module* mine; public: ServernameResolver(Module* me, SpanningTreeUtilities* Util, InspIRCd* Instance, const std::string &hostname, Link x, bool &cached, QueryType qt); - void OnLookupComplete(const std::string &result, unsigned int ttl, bool cached); + void OnLookupComplete(const std::string &result, unsigned int ttl, bool cached, int resultnum = 0); void OnError(ResolverError e, const std::string &errormessage); }; -- cgit v1.2.3