patches/glibc/2.9/170-2.10-dns-no-gethostbyname4.patch
author "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr>
Sun Nov 20 18:08:00 2011 +0100 (2011-11-20)
changeset 2887 6ee3b25e1097
parent 1201 c9967a6e3b25
permissions -rw-r--r--
cc/gcc: rename the core backend function

Rename the core backend function to do_cc_core_backend, to
make it explicit it is a backend.

Signed-off-by: "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr>
     1 Original patch from: gentoo/src/patchsets/glibc/2.9/0080_all_glibc-2.10-dns-no-gethostbyname4.patch
     2 
     3 -= BEGIN original header =-
     4 http://sourceware.org/bugzilla/show_bug.cgi?id=7060
     5 http://bugs.gentoo.org/250468
     6 
     7 The gethostbyname4() lookup method is problematic since it fires out both
     8 the A and AAAA DNS queries in parallel and over the same socket. This
     9 should work in theory, but it turns out that many cheap DSL modems and
    10 similar devices have buggy DNS servers - if the AAAA query arrives too
    11 quickly after the A query, the server will generate only a single reply
    12 with the A query id but returning an error for the AAAA query; we get
    13 stuck waiting for the second reply.
    14 
    15 For gethostbyname4() users affected, disabling IPv6 in the system might
    16 work around the issue, unfortunately it only helps with applications
    17 using AI_ADDRCONFIG (e.g. Firefox); some (notably e.g. Pidgin) neglect
    18 to do that.
    19 
    20 Real fix should be using separate ports for the A and AAAA queries.
    21 
    22 -= END original header =-
    23 
    24 diff -durN glibc-2_9.orig/resolv/Versions glibc-2_9/resolv/Versions
    25 --- glibc-2_9.orig/resolv/Versions	2008-08-01 19:15:34.000000000 +0200
    26 +++ glibc-2_9/resolv/Versions	2009-02-02 22:00:46.000000000 +0100
    27 @@ -102,7 +102,7 @@
    28      _nss_dns_gethostbyname_r; _nss_dns_getnetbyaddr_r;
    29      _nss_dns_getnetbyname_r; _nss_dns_getcanonname_r;
    30      _nss_dns_gethostbyaddr2_r;
    31 -    _nss_dns_gethostbyname4_r;
    32 +#    _nss_dns_gethostbyname4_r;
    33    }
    34  }
    35