From: | "Mike Frysinger (vapier)" <vapier@g.o> |
---|---|
To: | gentoo-commits@l.g.o |
Subject: | [gentoo-commits] gentoo commit in src/patchsets/glibc/2.9: 0080_all_glibc-2.10-dns-no-gethostbyname4.patch |
Date: | Sat, 10 Jan 2009 09:55:15 |
Message-Id: | E1LLaYj-0001Fm-8f@stork.gentoo.org |
1 | vapier 09/01/10 09:55:13 |
2 | |
3 | Added: 0080_all_glibc-2.10-dns-no-gethostbyname4.patch |
4 | Log: |
5 | add simple hack for resolver issues #250468 |
6 | |
7 | Revision Changes Path |
8 | 1.1 src/patchsets/glibc/2.9/0080_all_glibc-2.10-dns-no-gethostbyname4.patch |
9 | |
10 | file : http://sources.gentoo.org/viewcvs.py/gentoo/src/patchsets/glibc/2.9/0080_all_glibc-2.10-dns-no-gethostbyname4.patch?rev=1.1&view=markup |
11 | plain: http://sources.gentoo.org/viewcvs.py/gentoo/src/patchsets/glibc/2.9/0080_all_glibc-2.10-dns-no-gethostbyname4.patch?rev=1.1&content-type=text/plain |
12 | |
13 | Index: 0080_all_glibc-2.10-dns-no-gethostbyname4.patch |
14 | =================================================================== |
15 | http://sourceware.org/bugzilla/show_bug.cgi?id=7060 |
16 | http://bugs.gentoo.org/250468 |
17 | |
18 | The gethostbyname4() lookup method is problematic since it fires out both |
19 | the A and AAAA DNS queries in parallel and over the same socket. This |
20 | should work in theory, but it turns out that many cheap DSL modems and |
21 | similar devices have buggy DNS servers - if the AAAA query arrives too |
22 | quickly after the A query, the server will generate only a single reply |
23 | with the A query id but returning an error for the AAAA query; we get |
24 | stuck waiting for the second reply. |
25 | |
26 | For gethostbyname4() users affected, disabling IPv6 in the system might |
27 | work around the issue, unfortunately it only helps with applications |
28 | using AI_ADDRCONFIG (e.g. Firefox); some (notably e.g. Pidgin) neglect |
29 | to do that. |
30 | |
31 | Real fix should be using separate ports for the A and AAAA queries. |
32 | |
33 | --- resolv/Versions 2008-08-02 10:26:09.000000000 +0200 |
34 | +++ resolv/Versions 2008-12-08 12:51:53.000000000 +0100 |
35 | @@ -102,7 +102,7 @@ libnss_dns { |
36 | _nss_dns_gethostbyname_r; _nss_dns_getnetbyaddr_r; |
37 | _nss_dns_getnetbyname_r; _nss_dns_getcanonname_r; |
38 | _nss_dns_gethostbyaddr2_r; |
39 | - _nss_dns_gethostbyname4_r; |
40 | +# _nss_dns_gethostbyname4_r; |
41 | } |
42 | } |