]> git.ipfire.org Git - thirdparty/squid.git/commitdiff
Make cachemgr.cgi protocol agnostic in IPv6-mode.
authorAmos Jeffries <squid3@treenet.co.nz>
Sun, 1 Jun 2008 09:11:51 +0000 (21:11 +1200)
committerAmos Jeffries <squid3@treenet.co.nz>
Sun, 1 Jun 2008 09:11:51 +0000 (21:11 +1200)
tools/cachemgr.cc

index c1967ac5da2e741bbbafdd11201394137f291b8e..38393912161a52b5baacb98b5881d06c8d8c4077 100644 (file)
@@ -795,16 +795,6 @@ process_request(cachemgr_request * req)
         return 1;
     }
 
-#if USE_IPV6
-    if ((s = socket(PF_INET6, SOCK_STREAM, 0)) < 0) {
-#else
-    if ((s = socket(PF_INET, SOCK_STREAM, 0)) < 0) {
-#endif
-        snprintf(buf, 1024, "socket: %s\n", xstrerror());
-        error_html(buf);
-        return 1;
-    }
-
     S = *gethostbyname(req->hostname);
 
     if ( !S.IsAnyAddr() ) {
@@ -821,6 +811,16 @@ process_request(cachemgr_request * req)
 
     S.GetAddrInfo(AI);
 
+#if USE_IPV6
+    if ((s = socket( AI->ai_family, SOCK_STREAM, 0)) < 0) {
+#else
+    if ((s = socket(PF_INET, SOCK_STREAM, 0)) < 0) {
+#endif
+        snprintf(buf, 1024, "socket: %s\n", xstrerror());
+        error_html(buf);
+        return 1;
+    }
+
     if (connect(s, AI->ai_addr, AI->ai_addrlen) < 0) {
         snprintf(buf, 1024, "connect %s: %s\n",
                  S.ToURL(ipbuf,MAX_IPSTRLEN),