X-Git-Url: https://git.netwichtig.de/gitweb/?a=blobdiff_plain;f=src%2Fmodules%2Fm_spanningtree%2Fresolvers.cpp;h=d7c4c52274c02a2dfe51c16eabee2db5aa51dfff;hb=fc4fc43ec232407b38d7ca182cb92c5cac4287aa;hp=be185a28fbfa0c09bcc319d5f36532af916cfd14;hpb=bd2236348ab57ddb358c770002b75291e2f931bd;p=user%2Fhenk%2Fcode%2Finspircd.git diff --git a/src/modules/m_spanningtree/resolvers.cpp b/src/modules/m_spanningtree/resolvers.cpp index be185a28f..d7c4c5227 100644 --- a/src/modules/m_spanningtree/resolvers.cpp +++ b/src/modules/m_spanningtree/resolvers.cpp @@ -71,7 +71,7 @@ void ServernameResolver::OnError(ResolverError e, const std::string &errormessag /* Ooops! */ if (query == DNS_QUERY_AAAA) { - bool cached; + bool cached = false; ServernameResolver* snr = new ServernameResolver(Utils, host, MyLink, cached, DNS_QUERY_A, myautoconnect); ServerInstance->AddResolver(snr, cached); return; @@ -87,14 +87,22 @@ SecurityIPResolver::SecurityIPResolver(Module* me, SpanningTreeUtilities* U, con void SecurityIPResolver::OnLookupComplete(const std::string &result, unsigned int ttl, bool cached) { - Utils->ValidIPs.push_back(result); + for (std::vector >::iterator i = Utils->LinkBlocks.begin(); i != Utils->LinkBlocks.end(); ++i) + { + Link* L = *i; + if (L->IPAddr == host) + { + Utils->ValidIPs.push_back(result); + break; + } + } } void SecurityIPResolver::OnError(ResolverError e, const std::string &errormessage) { if (query == DNS_QUERY_AAAA) { - bool cached; + bool cached = false; SecurityIPResolver* res = new SecurityIPResolver(mine, Utils, host, MyLink, cached, DNS_QUERY_A); ServerInstance->AddResolver(res, cached); return;