Bug#658171: libc6: dns resolving failing after point release update
tag 658171 + confirmed thanks Le 31/01/2012 21:17, Bernhard R. Link a écrit : * Bernhard R. Link brl...@debian.org [120131 20:57]: It guess it gets confused if the dns server (in this case a local pdnsd as the ISP supplied server does not answer to at all thus causing long timeouts all the time) replies to queries with not implemented. Here is some tcpdump log of wget www.gmx.net: This is with the old version libc6: 21:05:57.420550 IP (tos 0x0, ttl 64, id 42980, offset 0, flags [DF], proto UDP (17), length 56) 127.0.0.1.47733 127.0.0.1.53: [bad udp cksum 3540!] 46166+ A? www.gmx.de. (28) 21:05:57.423897 IP (tos 0x0, ttl 64, id 42981, offset 0, flags [DF], proto UDP (17), length 56) 127.0.0.1.47733 127.0.0.1.53: [bad udp cksum c6d5!] 7850+ ? www.gmx.de. (28) 21:05:57.423973 IP (tos 0x0, ttl 64, id 0, offset 0, flags [DF], proto UDP (17), length 56) 127.0.0.1.53 127.0.0.1.47733: [bad udp cksum 4255!] 7850 NotImp q: ? www.gmx.de. 0/0/0 (28) 21:05:57.424093 IP (tos 0x0, ttl 64, id 0, offset 0, flags [DF], proto UDP (17), length 72) 127.0.0.1.53 127.0.0.1.47733: [bad udp cksum e4e6!] 46166 q: A? www.gmx.de. 1/0/0 www.gmx.de. [11m8s] A 213.165.64.74 (44) 21:05:57.546142 IP (tos 0x0, ttl 64, id 43012, offset 0, flags [DF], proto UDP (17), length 57) 127.0.0.1.54485 127.0.0.1.53: [bad udp cksum 61e6!] 61514+ A? www.gmx.net. (29) 21:05:57.546159 IP (tos 0x0, ttl 64, id 43013, offset 0, flags [DF], proto UDP (17), length 57) 127.0.0.1.54485 127.0.0.1.53: [bad udp cksum b187!] 13307+ ? www.gmx.net. (29) 21:05:57.546259 IP (tos 0x0, ttl 64, id 0, offset 0, flags [DF], proto UDP (17), length 57) 127.0.0.1.53 127.0.0.1.54485: [bad udp cksum 2d07!] 13307 NotImp q: ? www.gmx.net. 0/0/0 (29) 21:05:57.546371 IP (tos 0x0, ttl 64, id 0, offset 0, flags [DF], proto UDP (17), length 73) 127.0.0.1.53 127.0.0.1.54485: [bad udp cksum d780!] 61514 q: A? www.gmx.net. 1/0/0 www.gmx.net. [12m21s] A 213.165.64.71 (45) Note that it gets a NotImp for the and an address for the A and then proceeds (as it gets a HTTP redirect then asking for the redirected address). This is with the newer bad version: 21:06:07.348727 IP (tos 0x0, ttl 64, id 45462, offset 0, flags [DF], proto UDP (17), length 56) 127.0.0.1.34608 127.0.0.1.53: [bad udp cksum 377f!] 43161+ A? www.gmx.de. (28) 21:06:07.351912 IP (tos 0x0, ttl 64, id 45463, offset 0, flags [DF], proto UDP (17), length 56) 127.0.0.1.34608 127.0.0.1.53: [bad udp cksum 8a57!] 53291+ ? www.gmx.de. (28) 21:06:07.351986 IP (tos 0x0, ttl 64, id 0, offset 0, flags [DF], proto UDP (17), length 56) 127.0.0.1.53 127.0.0.1.34608: [bad udp cksum 5d7!] 53291 NotImp q: ? www.gmx.de. 0/0/0 (28) 21:06:07.352099 IP (tos 0x0, ttl 64, id 0, offset 0, flags [DF], proto UDP (17), length 72) 127.0.0.1.53 127.0.0.1.34608: [bad udp cksum f125!] 43161 q: A? www.gmx.de. 1/0/0 www.gmx.de. [10m58s] A 213.165.64.74 (44) 21:06:07.352164 IP (tos 0x0, ttl 64, id 45463, offset 0, flags [DF], proto UDP (17), length 79) 127.0.0.1.50438 127.0.0.1.53: [bad udp cksum a99e!] 20724+ A? www.gmx.de.Speedport_W_502V_Typ_A. (51) 21:06:07.352220 IP (tos 0x0, ttl 64, id 45464, offset 0, flags [DF], proto UDP (17), length 79) 127.0.0.1.50438 127.0.0.1.53: [bad udp cksum da40!] 37827+ ? www.gmx.de.Speedport_W_502V_Typ_A. (51) 21:06:07.352294 IP (tos 0x0, ttl 64, id 0, offset 0, flags [DF], proto UDP (17), length 79) 127.0.0.1.53 127.0.0.1.50438: [bad udp cksum 261e!] 20724 NXDomain q: A? www.gmx.de.Speedport_W_502V_Typ_A. 0/0/0 (51) 21:06:07.352341 IP (tos 0x0, ttl 64, id 0, offset 0, flags [DF], proto UDP (17), length 79) 127.0.0.1.53 127.0.0.1.50438: [bad udp cksum 55c0!] 37827 NotImp q: ? www.gmx.de.Speedport_W_502V_Typ_A. 0/0/0 (51) Here it gives up after it gets the address and instead continues using the domain search path from resolv.conf. (Finally giving up and wget getting an error). I've also done this test on a system with the old working libc6 and only giving one wget the newer libc6 version using LD_LIBRAR_PATH and it shows the same problem (so it cannot be anything else depending on libc6 but must be the resolver itself). Thanks a lot for the detailed analysis, it helped me to understand the problem. I have written a patch for bind9 that returns NOTIMP for queries, and with it I have been able to reproduce the issue. That clearly help for debugging and tests. For the record, it usually fails only for the first query, as in that case the result of the query arrives before the result from the A one. For the others, given the entry is in cache, they are returned most of the time in the order of the queries, that is A and than . It means that a workaround until the bug is fixed is to add the following line to /etc/resolv.conf: options single-request I am
Processed: Re: Bug#658171: libc6: dns resolving failing after point release update
Processing commands for cont...@bugs.debian.org: tag 658171 + confirmed Bug #658171 [libc6] libc6: dns resolving failing after point release update Bug #657812 [libc6] [2.11.2 - 2.11.3 regression] first dns resolution request fails, if query yields not implemented Bug #658052 [libc6] [2.11.2 - 2.11.3 regression] first dns resolution request fails, if query yields not implemented Added tag(s) confirmed. Added tag(s) confirmed. Added tag(s) confirmed. thanks Stopping processing here. Please contact me if you need assistance. -- 658171: http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=658171 Debian Bug Tracking System Contact ow...@bugs.debian.org with problems -- To UNSUBSCRIBE, email to debian-glibc-requ...@lists.debian.org with a subject of unsubscribe. Trouble? Contact listmas...@lists.debian.org Archive: http://lists.debian.org/handler.s.c.132809954728546.transcr...@bugs.debian.org
Bug#658278: ld.so segfaults on wrong input
Package: libc6 Version: 2.13-21 Severity: normal File: /lib64/ld-linux-x86-64.so.2 Running ld.so with the wrong kind of file segfaults: mrvn@frosties:~% /lib64/ld-linux-x86-64.so.2 /usr/lib/klibc/bin/ls zsh: segmentation fault /lib64/ld-linux-x86-64.so.2 /usr/lib/klibc/bin/ls MfG Goswin -- System Information: Debian Release: wheezy/sid APT prefers unstable APT policy: (500, 'unstable') Architecture: amd64 (x86_64) Kernel: Linux 3.1.0-1-amd64 (SMP w/4 CPU cores) Locale: LANG=C, LC_CTYPE=de_DE (charmap=ISO-8859-1) Shell: /bin/sh linked to /bin/dash Versions of packages libc6 depends on: ii libc-bin 2.13-21 ii libgcc1 1:4.6.2-5 libc6 recommends no packages. Versions of packages libc6 suggests: ii debconf [debconf-2.0] 1.5.41 ii glibc-doc none ii locales2.13-21 -- debconf information excluded -- To UNSUBSCRIBE, email to debian-glibc-requ...@lists.debian.org with a subject of unsubscribe. Trouble? Contact listmas...@lists.debian.org Archive: http://lists.debian.org/20120201184729.7158.97119.reportbug@frosties.localnet
Bug#658278: marked as done (ld.so segfaults on wrong input)
Your message dated Wed, 1 Feb 2012 23:00:41 +0100 with message-id 20120201220041.gd2...@hall.aurel32.net and subject line Re: Bug#658278: ld.so segfaults on wrong input has caused the Debian Bug report #658278, regarding ld.so segfaults on wrong input to be marked as done. This means that you claim that the problem has been dealt with. If this is not the case it is now your responsibility to reopen the Bug report if necessary, and/or fix the problem forthwith. (NB: If you are a system administrator and have no idea what this message is talking about, this may indicate a serious mail system misconfiguration somewhere. Please contact ow...@bugs.debian.org immediately.) -- 658278: http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=658278 Debian Bug Tracking System Contact ow...@bugs.debian.org with problems ---BeginMessage--- Package: libc6 Version: 2.13-21 Severity: normal File: /lib64/ld-linux-x86-64.so.2 Running ld.so with the wrong kind of file segfaults: mrvn@frosties:~% /lib64/ld-linux-x86-64.so.2 /usr/lib/klibc/bin/ls zsh: segmentation fault /lib64/ld-linux-x86-64.so.2 /usr/lib/klibc/bin/ls MfG Goswin -- System Information: Debian Release: wheezy/sid APT prefers unstable APT policy: (500, 'unstable') Architecture: amd64 (x86_64) Kernel: Linux 3.1.0-1-amd64 (SMP w/4 CPU cores) Locale: LANG=C, LC_CTYPE=de_DE (charmap=ISO-8859-1) Shell: /bin/sh linked to /bin/dash Versions of packages libc6 depends on: ii libc-bin 2.13-21 ii libgcc1 1:4.6.2-5 libc6 recommends no packages. Versions of packages libc6 suggests: ii debconf [debconf-2.0] 1.5.41 ii glibc-doc none ii locales2.13-21 -- debconf information excluded ---End Message--- ---BeginMessage--- On Wed, Feb 01, 2012 at 07:47:29PM +0100, Goswin von Brederlow wrote: Package: libc6 Version: 2.13-21 Severity: normal File: /lib64/ld-linux-x86-64.so.2 Running ld.so with the wrong kind of file segfaults: mrvn@frosties:~% /lib64/ld-linux-x86-64.so.2 /usr/lib/klibc/bin/ls zsh: segmentation fault /lib64/ld-linux-x86-64.so.2 /usr/lib/klibc/bin/ls It's not the wrong file type: $file /usr/lib/klibc/bin/ls /usr/lib/klibc/bin/ls: ELF 64-bit LSB executable, x86-64, version 1 (SYSV), statically linked (uses shared libs), stripped It's an ELF file, but given it has a different ABI just doesn't work with /lib64/ld-linux-x86-64.so.2. It's hardly the fault of the libc. -- Aurelien Jarno GPG: 1024D/F1BCDB73 aurel...@aurel32.net http://www.aurel32.net ---End Message---
Processed: tagging 653441
Processing commands for cont...@bugs.debian.org: tags 653441 + pending Bug #653441 [libc6.1-dev] error: 'epoll_create1' was not declared in this scope Added tag(s) pending. thanks Stopping processing here. Please contact me if you need assistance. -- 653441: http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=653441 Debian Bug Tracking System Contact ow...@bugs.debian.org with problems -- To UNSUBSCRIBE, email to debian-glibc-requ...@lists.debian.org with a subject of unsubscribe. Trouble? Contact listmas...@lists.debian.org Archive: http://lists.debian.org/handler.s.c.132813385616910.transcr...@bugs.debian.org
Bug#653441: marked as done (error: 'epoll_create1' was not declared in this scope)
Your message dated Wed, 1 Feb 2012 23:05:28 +0100 with message-id 20120201220528.ga24...@ohm.aurel32.net and subject line Re: epoll_create1() available in C, not C++ (on alpha)? has caused the Debian Bug report #653441, regarding error: 'epoll_create1' was not declared in this scope to be marked as done. This means that you claim that the problem has been dealt with. If this is not the case it is now your responsibility to reopen the Bug report if necessary, and/or fix the problem forthwith. (NB: If you are a system administrator and have no idea what this message is talking about, this may indicate a serious mail system misconfiguration somewhere. Please contact ow...@bugs.debian.org immediately.) -- 653441: http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=653441 Debian Bug Tracking System Contact ow...@bugs.debian.org with problems ---BeginMessage--- Package: libboost1.48-dev Version: 1.48.0-2 Severity: normal hi, flann fails to build with: [ 55%] Building CXX object src/cpp/CMakeFiles/flann_mpi_client.dir/flann/mpi/flann_mpi_client.cpp.o cd /build/buildd-flann_1.7.0-4-alpha-gzklli/flann-1.7.0/obj-alpha-linux-gnu/src/cpp /usr/bin/c++ -D_FLANN_VERSION=1.7.0 -DHAVE_MPI -g -O2 -Wformat -Wformat-security -Werror=format-security -O2 -g -I/usr/lib/openmpi/include -I/usr/lib/openmpi/include/openmpi -I/build/buildd-flann_1.7.0-4-alpha-gzklli/flann-1.7.0/src/cpp-Wall -o CMakeFiles/flann_mpi_client.dir/flann/mpi/flann_mpi_client.cpp.o -c /build/buildd-flann_1.7.0-4-alpha-gzklli/flann-1.7.0/src/cpp/flann/mpi/flann_mpi_client.cpp In file included from /usr/include/boost/asio/detail/epoll_reactor.hpp:242:0, from /usr/include/boost/asio/detail/reactor.hpp:21, from /usr/include/boost/asio/detail/impl/task_io_service.ipp:24, from /usr/include/boost/asio/detail/task_io_service.hpp:199, from /usr/include/boost/asio/impl/io_service.hpp:71, from /usr/include/boost/asio/io_service.hpp:767, from /usr/include/boost/asio/basic_io_object.hpp:19, from /usr/include/boost/asio/basic_socket.hpp:19, from /usr/include/boost/asio/basic_datagram_socket.hpp:20, from /usr/include/boost/asio.hpp:20, from /build/buildd-flann_1.7.0-4-alpha-gzklli/flann-1.7.0/src/cpp/flann/mpi/client.h:34, from /build/buildd-flann_1.7.0-4-alpha-gzklli/flann-1.7.0/src/cpp/flann/mpi/flann_mpi_client.cpp:8: /usr/include/boost/asio/detail/impl/epoll_reactor.ipp: In static member function 'static int boost::asio::detail::epoll_reactor::do_epoll_create()': /usr/include/boost/asio/detail/impl/epoll_reactor.ipp:468:39: error: 'epoll_create1' was not declared in this scope make[3]: *** [src/cpp/CMakeFiles/flann_mpi_client.dir/flann/mpi/flann_mpi_client.cpp.o] Error 1 It would be nice if header file /usr/include/boost/asio/detail/impl/epoll_reactor.ipp was fixed Thanks -- System Information: Debian Release: 6.0.1 APT prefers stable-updates APT policy: (500, 'stable-updates'), (500, 'stable'), (200, 'testing'), (100, 'unstable') Architecture: amd64 (x86_64) Kernel: Linux 2.6.32-5-amd64 (SMP w/2 CPU cores) Locale: LANG=en_US.utf8, LC_CTYPE=en_US.utf8 (charmap=UTF-8) Shell: /bin/sh linked to /bin/dash ---End Message--- ---BeginMessage--- Version: 2.13-25 On Wed, Jan 04, 2012 at 10:52:57PM -0600, Steve M. Robbins wrote: Hi, By private mail, I got the suggestion that maybe Alpha's epoll.h lacks extern C; I diff'd the two files and that's not the case. However, I did find the following: On Alpha: /* Same as epoll_create but with an additional FLAGS parameter. */ extern int epoll_create2 (int __size, int __flags) __THROW; On AMD: /* Same as epoll_create but with an FLAGS parameter. The unused SIZE parameter has been dropped. */ extern int epoll_create1 (int __flags) __THROW; And, in fact, epoll_create2() does not exist. I changed the test code to ... int fd = epoll_create2(0,0); and the Alpha machine fails to compile: gcc try-epoll.c /tmp/cckkq2Mc.o: In function `main': (.text+0x2c): undefined reference to `epoll_create2' I've boiled it down to the following test code: #include sys/epoll.h int main(int ac, char* av[]) { int fd = epoll_create1(0); return 0; } This can be successfully compiled using gcc on both alpha (tested in sid chroot of albeniz.debian.org) and on my amd64 machine. It turns out that the only reason it works on Alpha is due to C's rules for implict function definition: gcc -Wall try-epoll.c try-epoll.c: In function ~main~: try-epoll.c:5: warning: implicit declaration of function ~epoll_create1~ This looks like a bug in glibc, specifically that the following patch was never applied: http://www.cygwin.com/ml/libc-ports/2011-09/msg00017.html This has been fixed in eglibc 2.13-25. -- Aurelien Jarno
r5146 - glibc-package/trunk/debian
Author: aurel32 Date: 2012-02-01 22:04:02 + (Wed, 01 Feb 2012) New Revision: 5146 Modified: glibc-package/trunk/debian/changelog Log: Add bug number Modified: glibc-package/trunk/debian/changelog === --- glibc-package/trunk/debian/changelog2012-01-30 22:01:17 UTC (rev 5145) +++ glibc-package/trunk/debian/changelog2012-02-01 22:04:02 UTC (rev 5146) @@ -23,7 +23,7 @@ * Update Spanish debconf translation, by Omar Campagne. Closes: #655850. * Danish debconf translation update from Joe Hansen. Closes: #656681. * patches/alpha/submitted-epoll_create1.diff: new patch from Mike -Frysinger to fix epoll_create1() on alpha. +Frysinger to fix epoll_create1() on alpha. Closes: #653441. * debian/control.in/main: bump build-depends on libc-linux-dev to (= 3.2.1-1) to get accept4 defined on ia64. debian/libc6.1.symbols.ia64: force accept4 version to 2.13-25~. -- To UNSUBSCRIBE, email to debian-glibc-requ...@lists.debian.org with a subject of unsubscribe. Trouble? Contact listmas...@lists.debian.org Archive: http://lists.debian.org/e1rsihc-0004st...@vasks.debian.org
Processed: tagging 658171
Processing commands for cont...@bugs.debian.org: tags 658171 + pending Bug #658171 [libc6] libc6: dns resolving failing after point release update Bug #657812 [libc6] [2.11.2 - 2.11.3 regression] first dns resolution request fails, if query yields not implemented Bug #658052 [libc6] [2.11.2 - 2.11.3 regression] first dns resolution request fails, if query yields not implemented Added tag(s) pending. Added tag(s) pending. Added tag(s) pending. thanks Stopping processing here. Please contact me if you need assistance. -- 658171: http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=658171 Debian Bug Tracking System Contact ow...@bugs.debian.org with problems -- To UNSUBSCRIBE, email to debian-glibc-requ...@lists.debian.org with a subject of unsubscribe. Trouble? Contact listmas...@lists.debian.org Archive: http://lists.debian.org/handler.s.c.132814166012083.transcr...@bugs.debian.org
r5147 - in glibc-package/trunk/debian: . patches patches/any
Author: aurel32 Date: 2012-02-02 00:14:08 + (Thu, 02 Feb 2012) New Revision: 5147 Added: glibc-package/trunk/debian/patches/any/submitted-resolv-first-query-failure.diff Modified: glibc-package/trunk/debian/changelog glibc-package/trunk/debian/patches/series Log: * patches/any/submitted-resolv-first-query-failure.diff: new patch to fix resolving issues with broken servers returning NOTIMP or FORMERR to queries. Closes: #658171. Modified: glibc-package/trunk/debian/changelog === --- glibc-package/trunk/debian/changelog2012-02-01 22:04:02 UTC (rev 5146) +++ glibc-package/trunk/debian/changelog2012-02-02 00:14:08 UTC (rev 5147) @@ -2,6 +2,9 @@ [ Aurelien Jarno ] * sysdeps/kfreebsd.mk: also symlink x86 directory. + * patches/any/submitted-resolv-first-query-failure.diff: new patch to fix +resolving issues with broken servers returning NOTIMP or FORMERR to +queries. Closes: #658171. -- Aurelien Jarno aure...@debian.org Mon, 30 Jan 2012 23:01:02 +0100 Added: glibc-package/trunk/debian/patches/any/submitted-resolv-first-query-failure.diff === --- glibc-package/trunk/debian/patches/any/submitted-resolv-first-query-failure.diff (rev 0) +++ glibc-package/trunk/debian/patches/any/submitted-resolv-first-query-failure.diff 2012-02-02 00:14:08 UTC (rev 5147) @@ -0,0 +1,36 @@ +2012-02-02 Aurelien Jarno aure...@debian.org + + * resolv/res_query.c(__libc_res_nsearch): succeed if the first + query fails, but the second query succeeds. + +diff --git a/resolv/res_query.c b/resolv/res_query.c +index 947c651..c88268f 100644 +--- a/resolv/res_query.c b/resolv/res_query.c +@@ -378,7 +378,7 @@ __libc_res_nsearch(res_state statp, + ret = __libc_res_nquerydomain(statp, name, NULL, class, type, + answer, anslen, answerp, + answerp2, nanswerp2, resplen2); +- if (ret 0 || trailing_dot) ++ if (ret 0 || (ret == 0 *resplen2 0) || trailing_dot) + return (ret); + saved_herrno = h_errno; + tried_as_is++; +@@ -418,7 +418,7 @@ __libc_res_nsearch(res_state statp, + answer, anslen, answerp, + answerp2, nanswerp2, + resplen2); +- if (ret 0) ++ if ((ret 0) || (ret == 0 *resplen2 0)) + return (ret); + + if (answerp *answerp != answer) { +@@ -487,7 +487,7 @@ __libc_res_nsearch(res_state statp, + ret = __libc_res_nquerydomain(statp, name, NULL, class, type, + answer, anslen, answerp, + answerp2, nanswerp2, resplen2); +- if (ret 0) ++ if ((ret 0) || (ret == 0 *resplen2 0)) + return (ret); + } + Modified: glibc-package/trunk/debian/patches/series === --- glibc-package/trunk/debian/patches/series 2012-02-01 22:04:02 UTC (rev 5146) +++ glibc-package/trunk/debian/patches/series 2012-02-02 00:14:08 UTC (rev 5147) @@ -320,3 +320,4 @@ any/cvs-vfscanf.diff any/cvs-fmtmsg-lock.diff any/cvs-reloc-sort.diff +any/submitted-resolv-first-query-failure.diff -- To UNSUBSCRIBE, email to debian-glibc-requ...@lists.debian.org with a subject of unsubscribe. Trouble? Contact listmas...@lists.debian.org Archive: http://lists.debian.org/e1rskjw-0007vc...@vasks.debian.org