[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Bug#52195: marked as done (getaddrinfo() with PF_UNSPEC hints returns EAI_NODATA)



Your message dated 28 Dec 1999 19:54:41 -0000
with message-id <19991228195441.21271.qmail@master.debian.org>
and subject line Bug#52195: fixed in glibc 2.1.2-11
has caused the attached Bug report 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 I am
talking about this indicates a serious mail system misconfiguration
somewhere.  Please contact me immediately.)

Darren Benham
(administrator, Debian Bugs database)

--------------------------------------
Received: (at submit) by bugs.debian.org; 8 Dec 1999 05:14:47 +0000
Received: (qmail 9951 invoked from network); 8 Dec 1999 05:14:46 -0000
Received: from cerberus.nemoto.ecei.tohoku.ac.jp (root@130.34.199.67)
  by master.debian.org with SMTP; 8 Dec 1999 05:14:46 -0000
Received: from localhost (yoshfuji@localhost [127.0.0.1])
	by cerberus.nemoto.ecei.tohoku.ac.jp (8.9.3+3.2W/8.9.3/Debian 8.9.3-6) with ESMTP id OAA02733
	for <submit@bugs.debian.org>; Wed, 8 Dec 1999 14:14:40 +0900
To: submit@bugs.debian.org
Subject: getaddrinfo() with PF_UNSPEC hints returns EAI_NODATA
From: Hideaki YOSHIFUJI <yoshfuji@ecei.tohoku.ac.jp>
X-Mailer: Mew version 1.94 on XEmacs 20.4 (Emerald)
Sender: YOSHIFUJI Hideaki <yoshfuji@cerberus.nemoto.ecei.tohoku.ac.jp>
X-URL: http://www.ecei.tohoku.ac.jp/%7Eyoshfuji/
X-Fingerprint: F7 31 65 99 5E B2 BB A7 15 15  13 23 18 06 A9 6F 57 00 6B 25
X-Pgp5-Key-Url: http://cerberus.nemoto.ecei.tohoku.ac.jp/%7Eyoshfuji/yoshfuji@ecei.tohoku.ac.jp.asc
Mime-Version: 1.0
Content-Type: Text/Plain; charset=us-ascii
Content-Transfer-Encoding: 7bit
Message-Id: <19991208141439G.yoshfuji@cerberus.nemoto.ecei.tohoku.ac.jp>
Date: Wed, 08 Dec 1999 14:14:39 +0900
X-Dispatcher: imput version 990905(IM130)
Lines: 123

Package: libc6
Version: 2.1.2-10
Security: Important

Even on IPv6 capable hosts, the getaddrinfo() function (defined in RFC2553) 
with PF_UNSPEC hints returns EAI_NODATA error if the target host has only 
AAAA record(s).  In this case, it SHOULD return IPv6 addresses from AAAA 
record(s) (on IPv6 capable hosts at least).

If PF_INET6 is given to getaddrinfo() as its "hints" argument, it will find
AAAA record(s).  But this "ad hoc" solution is very imcompatible with other
IPv6 stack (such as FreeBSD + KAME) and breaks pure protocol independent 
programming model.

Similar report is already done in debian-ipv6 ML 
<http://www.debian.org/Lists-Archives/debian-ipv6-9911/msg00011.html>
but no records about this did not found in BTS.
This report is to record the problem to much more public space.


Note: After I copied /lib/libc-2.1.2.so from other Debian 2.1.2-5 
      box to my 2.1.2-10 box, it works fine.
      (This is dangerous test.)


The test program:

/* gaitest.c */
#include <stdio.h>
#include <sys/socket.h>
#include <netdb.h>

struct AList{
        int type;
        char *name;
};
struct AList sock_alist[] = {
        { 0,                    "Unspecified"   },
        { SOCK_STREAM,          "SOCK_STREAM"   },
        { SOCK_DGRAM,           "SOCK_DGRAM"    },
        { -1,                   NULL            }
};

int main(int argc, char *argv[]){
        char *name = "localhost";
        char *service = NULL;
        struct addrinfo hints, *ai;
        int j;
        int status;
        
        if (argc>1) name = argv[1];
        if (argc>2) service = argv[2];
        ai=NULL;
        printf ("getaddrinfo(\"%s\",\"%s\",&hints,&ai)\n",
                name, service);
        for(j=0; sock_alist[j].name; j++){
                memset(&hints,sizeof(hints),0);
                hints.ai_flags = 0;
                hints.ai_family = PF_UNSPEC;
                hints.ai_socktype = sock_alist[j].type;
                status = getaddrinfo(name,service,&hints,&ai);
                printf ("\tsocktype=%d(%s): %d = %s\n",
                        sock_alist[j].type,
                        sock_alist[j].name,
                        status,
                        (status ? gai_strerror(status) : "ok")
                );
                if(ai){ freeaddrinfo(ai);}
        }
        return (0);
}

---- 
The results on libc6-2.1.2-10 machine (buggy):

|% nslookup -q=any pandora.ipv6.debian.org
:
|Non-authoritative answer:
|pandora.ipv6.debian.org IPv6 address = 3ffe:600:8000:8::32
:

|% ./gaitest pandora.ipv6.debian.org
|getaddrinfo("pandora.ipv6.debian.org","(null)",&hints,&ai)
|        socktype=0(Unspecified): -5 = No address associated with hostname
|        socktype=1(SOCK_STREAM): -5 = No address associated with hostname
|        socktype=2(SOCK_DGRAM): -5 = No address associated with hostname

|% ./gaitest pandora.ipv6.debian.org 80
|getaddrinfo("pandora.ipv6.debian.org","80",&hints,&ai)
|        socktype=0(Unspecified): -8 = Servname not supported for ai_socktype
|        socktype=1(SOCK_STREAM): -5 = No address associated with hostname
|        socktype=2(SOCK_DGRAM): -5 = No address associated with hostname


On libc6-2.1.2-5 machine (seems ok):

|% ./gaitest pandora.ipv6.debian.org
|getaddrinfo("pandora.ipv6.debian.org","(null)",&hints,&ai)
|        socktype=0(Unspecified): 0 = ok
|        socktype=1(SOCK_STREAM): 0 = ok
|        socktype=2(SOCK_DGRAM): 0 = ok

|./gaitest pandora.ipv6.debian.org 80
|getaddrinfo("pandora.ipv6.debian.org","80",&hints,&ai)
|        socktype=0(Unspecified): -8 = Servname not supported for ai_socktype
|        socktype=1(SOCK_STREAM): 0 = ok
|        socktype=2(SOCK_DGRAM): 0 = ok


Thanks.


Desired=Unknown/Install/Remove/Purge
| Status=Not/Installed/Config-files/Unpacked/Failed-config/Half-installed
|/ Err?=(none)/Hold/Reinst-required/X=both-problems (Status,Err: uppercase=bad)
||/ Name            Version        Description
+++-===============-==============-============================================
ii  libc6           2.1.2-10       GNU C Library: Shared libraries and timezone

-- 
Hideaki YOSHIFUJI <yoshfuji@ecei.tohoku.ac.jp>
Web Page: http://www.ecei.tohoku.ac.jp/%7Eyoshfuji/
PGP5i FP: F731 6599 5EB2 BBA7 1515  1323 1806 A96F 5700 6B25 
---------------------------------------
Received: (at 52195-close) by bugs.debian.org; 28 Dec 1999 19:54:42 +0000
Received: (qmail 21272 invoked by uid 878); 28 Dec 1999 19:54:41 -0000
Date: 28 Dec 1999 19:54:41 -0000
Message-ID: <19991228195441.21271.qmail@master.debian.org>
From: Joel Klecker <debian-glibc@lists.debian.org>
To: 52195-close@bugs.debian.org
Subject: Bug#52195: fixed in glibc 2.1.2-11

We believe that the bug you reported is fixed in the latest version of
glibc, which has been installed in the Debian FTP archive:
libc6_2.1.2-11_sparc.deb
  to dists/potato/main/binary-sparc/base/libc6_2.1.2-11.deb
  replacing libc6_2.1.2-8.deb
locales_2.1.2-11_all.deb
  to dists/potato/main/binary-all/admin/locales_2.1.2-11.deb
  replacing locales_2.1.2-10.deb
gconv-modules_2.1.2-11_sparc.deb
  to dists/potato/main/binary-sparc/libs/gconv-modules_2.1.2-11.deb
  replacing gconv-modules_2.1.2-8.deb
glibc-doc_2.1.2-11_all.deb
  to dists/potato/main/binary-all/doc/glibc-doc_2.1.2-11.deb
  replacing glibc-doc_2.1.2-10.deb
libc6-prof_2.1.2-11_sparc.deb
  to dists/potato/main/binary-sparc/devel/libc6-prof_2.1.2-11.deb
  replacing libc6-prof_2.1.2-8.deb
libc6-bin_2.1.2-11_sparc.deb
  to dists/potato/main/binary-sparc/utils/libc6-bin_2.1.2-11.deb
glibc_2.1.2-11.diff.gz
  to dists/potato/main/source/libs/glibc_2.1.2-11.diff.gz
  replacing glibc_2.1.2-10.diff.gz
nscd_2.1.2-11_sparc.deb
  to dists/potato/main/binary-sparc/admin/nscd_2.1.2-11.deb
  replacing nscd_2.1.2-8.deb
glibc_2.1.2-11.dsc
  to dists/potato/main/source/libs/glibc_2.1.2-11.dsc
  replacing glibc_2.1.2-10.dsc
libc6-pic_2.1.2-11_sparc.deb
  to dists/potato/main/binary-sparc/devel/libc6-pic_2.1.2-11.deb
  replacing libc6-pic_2.1.2-8.deb
i18ndata_2.1.2-11_all.deb
  to dists/potato/main/binary-all/admin/i18ndata_2.1.2-11.deb
libc6-dbg_2.1.2-11_sparc.deb
  to dists/potato/main/binary-sparc/devel/libc6-dbg_2.1.2-11.deb
  replacing libc6-dbg_2.1.2-8.deb
libc6-dev_2.1.2-11_sparc.deb
  to dists/potato/main/binary-sparc/devel/libc6-dev_2.1.2-11.deb
  replacing libc6-dev_2.1.2-8.deb

Note that this package is not part of the released stable Debian
distribution.  It may have dependencies on other unreleased software,
or other instabilities.  Please take care if you wish to install it.
The update will eventually make its way into the next released Debian
distribution.

A summary of the changes between this version and the previous one is
attached.

Thank you for reporting the bug, which will now be closed.  If you
have further comments please address them to 52195@bugs.debian.org,
and the maintainer will reopen the bug report if appropriate.

Debian distribution maintenance software
pp.
Joel Klecker <debian-glibc@lists.debian.org> (supplier of updated glibc package)

(This message was generated automatically at their request; if you
believe that there is a problem with it please contact the archive
administrators by mailing ftpmaster@debian.org)


-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

Format: 1.6
Date: Sat, 25 Dec 1999 09:54:29 -0800
Source: glibc
Binary: gconv-modules locales libc0.2-dbg glibc-doc nscd libc6.1-dbg libc0.2 libc6-dbg libnss1-compat libc0.2-prof libc6.1 libc6 libc0.2-bin libc0.2-pic libc6.1-prof libc6-prof libc6.1-bin libc6-bin libc0.2-dev libc6.1-pic libc6-pic i18ndata libc6.1-dev libc6-dev
Architecture: source all sparc
Version: 2.1.2-11
Distribution: unstable
Urgency: low
Maintainer: Joel Klecker <debian-glibc@lists.debian.org>
Description: 
 gconv-modules - GNU C Library: Codeset conversion modules
 glibc-doc  - GNU C Library: Documentation
 i18ndata   - GNU C Library: National Language (locale) data [source]
 libc6      - GNU C Library: Shared libraries and Timezone data
 libc6-bin  - GNU C Library: User Programs.
 libc6-dbg  - GNU C Library: Libraries with debugging symbols
 libc6-dev  - GNU C Library: Development Libraries and Header Files.
 libc6-pic  - GNU C Library: PIC archive library
 libc6-prof - GNU C Library: Profiling Libraries.
 locales    - GNU C Library: National Language (locale) data [binary]
 nscd       - GNU C Library: Name Service Cache Daemon
Closes: 48120 50311 50341 52195
Changes: 
 glibc (2.1.2-11) unstable; urgency=low
 .
   * The "If it ain't broke, you're not tryin'" release.
   * Split out $(libc)-bin and libnss1-compat.
   * Split debian/rules into debian/package-rules/*.
     $(libc-bin):
       - Install db_* programs as glibcdb_*.
       - Move zic, zdump, locale, localedef, getent here.
       - Use alternatives for db_*. (closes:Bug#50311,#50341)
   * debian/mk/rules-* -> debian/rules.d/*.
   * debian/<pkg> now resembles $(tmpdir) tree for <pkg>.
   * Improve setperms rule, so debian/perms can specify fewer files.
   * New source unpacking system, see prep.sh.
   * Remove devpts.sh, the init script is now in sysvinit.
   * Improve debian/libc/DEBIAN/shlibs rule (debian/rules.d/shlibs.mk).
   * debian/sysdeps/soname.mk: Bump shlib_depend.
   * Add sysdeps files for $(DEB_HOST_GNU_CPU).
   * Add debian/patches/glibc-mega.dpatch:
     Selected patches from CVS (closes:Bug#48120,#52195).
   * Add debian/patches/linuxthreads-mega.dpatch:
     Selected patches from CVS.
   * Add debian/patches/alpha-pt-machine.h.dpatch:
     Fix pt-machine.h so that linuxthreads compiles on Alpha.
   * Add debian/patches/db2-alpha-powerpc-mutex.dpatch:
     Alpha and PowerPC implementations for db2 spinlocks.
     (patches by David Huggins-Daines <dhd@debian.org>)
     (db2 patch slightly modified)
   * Add debian/patches/powerpc-plt.dpatch:
     1999-10-07  Geoffrey Keating  <geoffk@cygnus.com>
       * sysdeps/powerpc/dl-machine.c: Many minor formatting changes.
         (OPCODE_LWZU): New macro.
         (OPCODE_ADDIS_HI): New macro.
         (OPCODE_LIS_HI): New macro.
         (__elf_machine_runtime_setup): Change PLT code-generation scheme
         for thread safety even with very large PLTs, better efficiency,
         and to fix a cache-flushing bug.
         (__elf_machine_fixup_plt): Likewise.
         (__process_machine_rela): Don't use elf_machine_fixup_plt.
   * Add debian/patches/sparc64-linux-lib64.dpatch:
     Use /lib/64 and /usr/lib/64 instead of /lib64 and /usr/lib64.
   * Add debian/patches/sparc64-linux-execve.dpatch:
     Add __syscall_execve to sparc64 syscalls.list.
   * Add automatic parallel build support for SMP systems.
   * Fix broken parsing of DEB_BUILD_OPTIONS.
   * Add framework to build libc6-64 and libc6-64-dev packages for sparc
     (not enabled for potato).
   * Split locales into `locales' and `i18ndata'.
Files: 
 5a4aea722dbcda10f77c103ba679b8f5 1086 libs required glibc_2.1.2-11.dsc
 64c6569c6adaeb34ae231137946a182d 403814 libs required glibc_2.1.2-11.diff.gz
 ff444dc115358173ce459e8bec2788c9 1245412 base required libc6_2.1.2-11_sparc.deb
 a60cc8f895f521b7bc3ba65f1b78663b 184202 utils standard libc6-bin_2.1.2-11_sparc.deb
 20f742a9cafe0051478e28cfee632706 567184 libs standard gconv-modules_2.1.2-11_sparc.deb
 d138ba85b65f48b77919cf78fce9a8fe 2273886 devel standard libc6-dev_2.1.2-11_sparc.deb
 d470b292f4a6e31220333cf2d24c3534 1058160 devel extra libc6-prof_2.1.2-11_sparc.deb
 31ffa1af5bf2dc606ebc37f97ccf07ad 2447952 devel extra libc6-dbg_2.1.2-11_sparc.deb
 379d2f5ea839d0a31a9243c5c0fe902e 750242 devel extra libc6-pic_2.1.2-11_sparc.deb
 3042ec28e7d3340a65f4d3330516f097 41218 admin optional nscd_2.1.2-11_sparc.deb
 b13baac58c7c7914e2b43d326417713a 1081686 admin standard locales_2.1.2-11_all.deb
 6b52fbd68312805b38f7c8ca276caed2 1020534 admin extra i18ndata_2.1.2-11_all.deb
 f3f60eaf2239a9e8f8f78f3f143bf9e3 2384948 doc optional glibc-doc_2.1.2-11_all.deb

-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.0.0 (GNU/Linux)
Comment: For info see http://www.gnupg.org

iEUEARECAAYFAjhmYv0ACgkQRJMoLFuwjIaVLACdEi/o6gNZPATzdnJpK50m37Au
7EoAlAizrFS98iSomgOerjDt02pENRw=
=qO9Z
-----END PGP SIGNATURE-----


Reply to: