summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAlin Năstac <mrness@gentoo.org>2010-08-12 06:29:33 +0000
committerAlin Năstac <mrness@gentoo.org>2010-08-12 06:29:33 +0000
commit56714fa49734490c86cdef133cc76cf10b4165d7 (patch)
tree74ae24b2e4c4b6242d9c4705fe6d2b03ef3641b0 /net-proxy
parentAdd patch to generated testsuite to avoid autotools #331577. (diff)
downloadhistorical-56714fa49734490c86cdef133cc76cf10b4165d7.tar.gz
historical-56714fa49734490c86cdef133cc76cf10b4165d7.tar.bz2
historical-56714fa49734490c86cdef133cc76cf10b4165d7.zip
Merge upstream fix for broken https support (#331965).
Package-Manager: portage-2.1.8.3/cvs/Linux x86_64 RepoMan-Options: --force
Diffstat (limited to 'net-proxy')
-rw-r--r--net-proxy/squid/ChangeLog8
-rw-r--r--net-proxy/squid/Manifest15
-rw-r--r--net-proxy/squid/files/squid-3.1.6-bug3011.patch116
-rw-r--r--net-proxy/squid/squid-3.1.6-r1.ebuild (renamed from net-proxy/squid/squid-3.1.6.ebuild)3
4 files changed, 138 insertions, 4 deletions
diff --git a/net-proxy/squid/ChangeLog b/net-proxy/squid/ChangeLog
index d97695299b28..950b51074566 100644
--- a/net-proxy/squid/ChangeLog
+++ b/net-proxy/squid/ChangeLog
@@ -1,6 +1,12 @@
# ChangeLog for net-proxy/squid
# Copyright 1999-2010 Gentoo Foundation; Distributed under the GPL v2
-# $Header: /var/cvsroot/gentoo-x86/net-proxy/squid/ChangeLog,v 1.303 2010/08/09 17:49:07 jer Exp $
+# $Header: /var/cvsroot/gentoo-x86/net-proxy/squid/ChangeLog,v 1.304 2010/08/12 06:29:32 mrness Exp $
+
+*squid-3.1.6-r1 (12 Aug 2010)
+
+ 12 Aug 2010; Alin Năstac <mrness@gentoo.org> -squid-3.1.6.ebuild,
+ +squid-3.1.6-r1.ebuild, +files/squid-3.1.6-bug3011.patch:
+ Merge upstream fix for broken https support (#331965).
09 Aug 2010; Jeroen Roovers <jer@gentoo.org> squid-2.7.9.ebuild,
squid-3.1.6.ebuild:
diff --git a/net-proxy/squid/Manifest b/net-proxy/squid/Manifest
index b74297053661..1e061a0cb982 100644
--- a/net-proxy/squid/Manifest
+++ b/net-proxy/squid/Manifest
@@ -1,3 +1,6 @@
+-----BEGIN PGP SIGNED MESSAGE-----
+Hash: SHA1
+
AUX squid-2-capability.patch 970 RMD160 01edc052d32b6531e6db93ff1addef91e193c6df SHA1 533bff849dbcbfb2d85c4a995eaea6585a593fd7 SHA256 4e0cef8fc9643e7b4922c510bf25fbd902eaeaec0846eb49a809229ab75b21c6
AUX squid-2-heimdal.patch 776 RMD160 2ced12e7682356ee2eb660d877437c3ddad6476e SHA1 3a693c2c975fe4c77ee729d8af8ef28097b11fb6 SHA256 bd0083836321c596db3fc8749152bc77d5a4bd03070d33541b7b489af59e4c25
AUX squid-2.7.7-gentoo.patch 13118 RMD160 c4912b2e6746cb5f96d58f68f55d394c32053de2 SHA1 20482baae9ca9861ce5c1eac1e165b885058ad22 SHA256 c26c59fe2b0f3ac1c6ca4eeafb7c561b21729ab0d8918e1823a868814ee9f0e2
@@ -10,6 +13,7 @@ AUX squid-3.0.20-adapted-zph.patch 6951 RMD160 3178642934680e710bb3ddcfdba7dcea4
AUX squid-3.0.20-cross-compile.patch 1234 RMD160 f77c20557d83d4c630b1ec66403f53b1d0123b6d SHA1 7c9cd4558b040fe50dc2f86b9535d4ab52babdef SHA256 05d2b0eb6be2e8898073acd89b5241e6a5cfdb054aa1b048b52c660ae7be1f55
AUX squid-3.0.20-gentoo.patch 13157 RMD160 e017a2d0c9a5d873e624bfcf507a60b3947ff59f SHA1 0f2bc6545b4f9e1784350bf66378ab904a5f84f8 SHA256 2ca42644b5b16f8a8e82cc3dbdda568cfb06e1475531b16be090be8a374d4fca
AUX squid-3.0.20-libmd5.patch 546 RMD160 e1ae14eaa63e64be5fa8b9ed108c532c5e5e8e2b SHA1 559b3659dbe375cc03303b88ed9cfbf61b4678fb SHA256 585b10aa129996983a70010525d67c0ee07e42db292dd069d455720c69eef264
+AUX squid-3.1.6-bug3011.patch 4424 RMD160 665397f98ac28a76aa78c462a7d03d37be6c440b SHA1 9db304a6e93a7bffafb938d2a0a73b9f497153b1 SHA256 bbb4df609b711965ad7b76afca7b4c7016be24cb978e085ddc024ab4fd1be023
AUX squid-3.1.6-gentoo.patch 12364 RMD160 f9cfd349d4d0fbb231b4293387eb1f21d2648adc SHA1 c1230d8ffe4135a966aeb365f552931240cb7e67 SHA256 30a282ccfb2cdf1b7abdc4fc7b3fe787e6ba63d0da8d5d7c82ee2789c06d94bf
AUX squid-3.1.6-libmd5.patch 588 RMD160 54666cae870b49c77dc7c009c2e333a3ef37d70c SHA1 dc30a416194388248c24488331818e58e44c5817 SHA256 c4587780d5fdd5a662b1051c1427f8c7a8e844fd60af6efae76795cb0716aa0d
AUX squid-3.1.6-qafixes.patch 2214 RMD160 985c4ffb9c40403b2ab0899ea195f66f9018b653 SHA1 c6199fc6c2faedc9a952655f9f4ef1bba6496177 SHA256 7a07ec0e44e741d88125ca15b9978913468eda227ead44412bef9821d799f797
@@ -28,6 +32,13 @@ EBUILD squid-2.7.7.ebuild 5992 RMD160 03ca98a46403bec990febbc7b28053dc6e89d519 S
EBUILD squid-2.7.9.ebuild 6176 RMD160 164d7d3e79c7b22873c72da716ebfd49568b9f12 SHA1 108fb94275e8a3a5fb9c82a3cb4ff542be41b4cf SHA256 e0ee44b41819b17543e6adf415731310872c1a63335145efe958f38452e60918
EBUILD squid-3.0.19.ebuild 6388 RMD160 9e726b958f190085163a7430979953cecaef222e SHA1 c045bba7cea042e55c9642140fbbf69f71000111 SHA256 70148d06e0e28ab64c8499a33d55d8df8c9239e24dede27bd63c342fa6ac4897
EBUILD squid-3.0.20-r1.ebuild 6489 RMD160 bb84df54afbdeb0995ac48690e0ddfd285a90c10 SHA1 d8e2985646f41552f50a82746d5b35226ee16c3b SHA256 2b0919985b0fbcb01be9f82088ef1a88ffaa41cdcc7a3035d46ef00e8505c027
-EBUILD squid-3.1.6.ebuild 7019 RMD160 76b39a08d5ba248dbf3b92161c895c042851146b SHA1 8a44d6636c94ab669427397f243358dca0aeafff SHA256 306d01b69d17166d0f8144793cafe05dce50b56d5a859a5204eaf0e881e5f7f9
-MISC ChangeLog 65793 RMD160 fba353dee65c3c5a36ad248f06b11cf857105542 SHA1 731addfea9d159134e2960d122650974e1199547 SHA256 162175548cf8f1cdd26b379ed6dc8c06a139e29a702f850f950b5ba2b1dd10b1
+EBUILD squid-3.1.6-r1.ebuild 7066 RMD160 45190f9166dd54c0eae717c22e7c6ad7f66f4e8c SHA1 91b4aa0cfe3055c489415a0e198c74d71b2dd1d7 SHA256 f0f803cb9d2dfd6de8655fd315183fa03ea94d2f74290266ea25c5b2d5b525d1
+MISC ChangeLog 66014 RMD160 438e60f2bf37f7898fdd8223bb9a21a37def9672 SHA1 bb1fa4ebde75d2dbbc922cd89043689f9a68fb29 SHA256 d6b61583ffe2323348e91c23535eefed6fb12d880863c8a9a8cfd328b6586bde
MISC metadata.xml 1015 RMD160 03ac3fffc7b01e366b173a4c3bf1dc6be1bb9202 SHA1 3c1681981e2a143ee50d0ee5bc901ac81e7c5cc4 SHA256 06d8e8a7909b9140eb2e70193db754b84d864da260d6cdf9bde9fa58442ce34a
+-----BEGIN PGP SIGNATURE-----
+Version: GnuPG v2.0.11 (GNU/Linux)
+
+iEYEARECAAYFAkxjlNwACgkQ1564UogppBIwqQCbB0yu3Aj0zOqY7nXpINMl/Poy
+mi0AoLz+k39NGXkyryFzwR5/ecFJSEdC
+=woZQ
+-----END PGP SIGNATURE-----
diff --git a/net-proxy/squid/files/squid-3.1.6-bug3011.patch b/net-proxy/squid/files/squid-3.1.6-bug3011.patch
new file mode 100644
index 000000000000..fe431d2dbd63
--- /dev/null
+++ b/net-proxy/squid/files/squid-3.1.6-bug3011.patch
@@ -0,0 +1,116 @@
+diff -ur ./src/dns_internal.cc /var/tmp/squid-3.1.6/src/dns_internal.cc
+--- ./src/dns_internal.cc 2010-08-01 22:01:37.000000000 +0800
++++ /var/tmp/squid-3.1.6/src/dns_internal.cc 2010-08-10 19:31:46.000000000 +0800
+@@ -201,10 +201,15 @@
+
+ if (A.IsAnyAddr()) {
+ debugs(78, 0, "WARNING: Squid does not accept " << A << " in DNS server specifications.");
+- A = "127.0.0.1";
++ A.SetLocalhost();
+ debugs(78, 0, "Will be using " << A << " instead, assuming you meant that DNS is running on the same machine");
+ }
+
++ if (!Ip::EnableIpv6 && !A.SetIPv4()) {
++ debugs(78, DBG_IMPORTANT, "WARNING: IPv6 is disabled. Discarding " << A << " in DNS server specifications.");
++ return;
++ }
++
+ if (nns == nns_alloc) {
+ int oldalloc = nns_alloc;
+ ns *oldptr = nameservers;
+@@ -742,6 +747,12 @@
+ else
+ addr = Config.Addrs.udp_incoming;
+
++ if (nameservers[ns].S.IsIPv4() && !addr.SetIPv4()) {
++ debugs(31, DBG_CRITICAL, "ERROR: Cannot contact DNS nameserver " << nameservers[ns].S << " from " << addr);
++ addr.SetAnyAddr();
++ addr.SetIPv4();
++ }
++
+ vc->queue = new MemBuf;
+
+ vc->msg = new MemBuf;
+diff -ur ./src/forward.cc /var/tmp/squid-3.1.6/src/forward.cc
+--- ./src/forward.cc 2010-08-01 22:01:37.000000000 +0800
++++ /var/tmp/squid-3.1.6/src/forward.cc 2010-08-10 19:31:46.000000000 +0800
+@@ -870,9 +870,9 @@
+
+ // if IPv6 is disabled try to force IPv4-only outgoing.
+ if (!Ip::EnableIpv6 && !outgoing.SetIPv4()) {
+- debugs(50, 4, "fwdConnectStart: " << xstrerror());
++ debugs(50, 4, "fwdConnectStart: IPv6 is Disabled. Cannot connect from " << outgoing);
+ ErrorState *anErr = errorCon(ERR_CONNECT_FAIL, HTTP_SERVICE_UNAVAILABLE, request);
+- anErr->xerrno = errno;
++ anErr->xerrno = EAFNOSUPPORT;
+ fail(anErr);
+ self = NULL; // refcounted
+ return;
+diff -ur ./src/neighbors.cc /var/tmp/squid-3.1.6/src/neighbors.cc
+--- ./src/neighbors.cc 2010-08-01 22:01:38.000000000 +0800
++++ /var/tmp/squid-3.1.6/src/neighbors.cc 2010-08-10 19:49:16.000000000 +0800
+@@ -46,6 +46,7 @@
+ #include "Store.h"
+ #include "icmp/net_db.h"
+ #include "ip/IpAddress.h"
++#include "ip/tools.h"
+
+ /* count mcast group peers every 15 minutes */
+ #define MCAST_COUNT_RATE 900
+@@ -1387,6 +1388,20 @@
+
+ IpAddress temp(getOutgoingAddr(NULL,p));
+
++ // if IPv6 is disabled try to force IPv4-only outgoing.
++ if (!Ip::EnableIpv6 && !temp.SetIPv4()) {
++ debugs(50, DBG_IMPORTANT, "WARNING: IPv6 is disabled. Failed to use " << temp << " to probe " << p->host);
++ return ret;
++ }
++
++ // if IPv6 is split-stack, prefer IPv4
++ if (Ip::EnableIpv6&IPV6_SPECIAL_SPLITSTACK) {
++ // NP: This is not a great choice of default,
++ // but with the current Internet being IPv4-majority has a higher success rate.
++ // if setting to IPv4 fails we dont care, that just means to use IPv6 outgoing.
++ temp.SetIPv4();
++ }
++
+ fd = comm_open(SOCK_STREAM, IPPROTO_TCP, temp, COMM_NONBLOCKING, p->host);
+
+ if (fd < 0)
+diff -ur ./src/tunnel.cc /var/tmp/squid-3.1.6/src/tunnel.cc
+--- ./src/tunnel.cc 2010-08-01 22:01:38.000000000 +0800
++++ /var/tmp/squid-3.1.6/src/tunnel.cc 2010-08-10 20:02:46.000000000 +0800
+@@ -46,6 +46,7 @@
+ #include "client_side.h"
+ #include "MemBuf.h"
+ #include "http.h"
++#include "ip/tools.h"
+
+ class TunnelStateData
+ {
+@@ -641,6 +642,24 @@
+ statCounter.server.other.requests++;
+ /* Create socket. */
+ IpAddress temp = getOutgoingAddr(request,NULL);
++
++ // if IPv6 is disabled try to force IPv4-only outgoing.
++ if (!Ip::EnableIpv6 && !temp.SetIPv4()) {
++ debugs(50, 4, "tunnelStart: IPv6 is Disabled. Tunnel failed from " << temp);
++ err = errorCon(ERR_CONNECT_FAIL, HTTP_SERVICE_UNAVAILABLE, request);
++ err->xerrno = EAFNOSUPPORT;
++ errorSend(fd, err);
++ return;
++ }
++
++ // if IPv6 is split-stack, prefer IPv4
++ if (Ip::EnableIpv6&IPV6_SPECIAL_SPLITSTACK) {
++ // NP: This is not a great choice of default,
++ // but with the current Internet being IPv4-majority has a higher success rate.
++ // if setting to IPv4 fails we dont care, that just means to use IPv6 outgoing.
++ temp.SetIPv4();
++ }
++
+ int flags = COMM_NONBLOCKING;
+ if (request->flags.spoof_client_ip) {
+ flags |= COMM_TRANSPARENT;
diff --git a/net-proxy/squid/squid-3.1.6.ebuild b/net-proxy/squid/squid-3.1.6-r1.ebuild
index 68f724ba521a..35d42bbfc5e0 100644
--- a/net-proxy/squid/squid-3.1.6.ebuild
+++ b/net-proxy/squid/squid-3.1.6-r1.ebuild
@@ -1,6 +1,6 @@
# Copyright 1999-2010 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
-# $Header: /var/cvsroot/gentoo-x86/net-proxy/squid/squid-3.1.6.ebuild,v 1.6 2010/08/09 17:49:07 jer Exp $
+# $Header: /var/cvsroot/gentoo-x86/net-proxy/squid/squid-3.1.6-r1.ebuild,v 1.1 2010/08/12 06:29:32 mrness Exp $
EAPI="2"
@@ -68,6 +68,7 @@ src_prepare() {
epatch "${FILESDIR}"/${P}-gentoo.patch
epatch "${FILESDIR}"/${P}-qafixes.patch
epatch "${FILESDIR}"/${P}-libmd5.patch
+ epatch "${FILESDIR}"/${P}-bug3011.patch
# eautoreconf breaks lib/libLtdl/libtool script
./bootstrap.sh || die "autoreconf failed"