]> git.netwichtig.de Git - user/henk/code/inspircd.git/commitdiff
This wont compile atm
authorbrain <brain@e03df62e-2008-0410-955e-edbf42e46eb7>
Mon, 5 Feb 2007 23:51:03 +0000 (23:51 +0000)
committerbrain <brain@e03df62e-2008-0410-955e-edbf42e46eb7>
Mon, 5 Feb 2007 23:51:03 +0000 (23:51 +0000)
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@6507 e03df62e-2008-0410-955e-edbf42e46eb7

include/dns.h
src/dns.cpp

index 6913527ae986d86f18ddaabf384a53b3bbe03ae1..54cdf5672986289a33dcfefcfbea1cb8d103e967 100644 (file)
@@ -337,7 +337,11 @@ class DNS : public EventHandler
        /**
         * Server address being used currently
         */
-       insp_inaddr myserver;
+       int socketfamily;
+#ifdef IPV6
+       in6_addr myserver6;
+#endif
+       in_addr myserver4;
 
        /**
         * A counter used to form part of the pseudo-random id
index ac6097cd25405ddae7f83cb507e3f1e58949be6b..ea6b000a9e3d788373b571feb731475fdffa29e7 100644 (file)
@@ -291,7 +291,6 @@ int DNS::PruneCache()
 
 void DNS::Rehash()
 {
-       insp_inaddr addr;
        ip6munge = false;
 
        if (this->GetFd() > -1)
@@ -319,6 +318,19 @@ void DNS::Rehash()
                this->ip6munge = true;
        }
 
+       this->socketfamily = AF_INET;
+#ifdef IPV6
+       if (strchr(ServerInstance->Config->DNSServer,':'))
+       {
+               this->socketfamily = AF_INET6;
+               inet_pton(AF_INET6, &this->myserver6, ServerInstance->Config->DNSServer);
+       }
+       else
+               inet_aton(&this->myserver4, ServerInstance->Config->DNSServer);
+#else
+       inet_aton(&this->myserver4, ServerInstance->Config->DNSServer);
+#endif
+
        /* Initialize mastersocket */
        int s = OpenTCPSocket(ServerInstance->Config->DNSServer, SOCK_DGRAM);
        this->SetFd(s);