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

Bug#211359: libc6: localhost resolution involving unnecessary DNS request in getaddrinfo



Package: libc6
Version: 2.2.5-11.5
Severity: normal

When using libldap in a LDAP client program, which connects to a LDAP
server on localhost on port 389 (default LDAP port), libldap uses
getaddrinfo() to resolve localhost into 127.0.0.1.

The resolution process involves querying the DNS although the
nsswitch.conf entry states :
hosts:          files dns

This can be very confusing, for instance if the DNS entries in
/etc/resolv.conf get configured in a wrong way. In this case, requests
to the DNS will fail after a 5 seconds lag, and LDAP connections will
work, but involving very strange lags of 5 secs...

I ran into this problem recently and described it here :
http://www.openldap.org/lists/openldap-bugs/200309/msg00058.html

I consider that this problem can greatly diminish some services based on
LDAP useability, if unnecessary lags can pop from time to time...

This problem of getaddrinfo's behaviour was addressed also in bug
#160596, but the behaviour described there was not concerning localhost.

I'd assume the resolution of localhost should somehow be handled
differently than the one of other machine names... so this may not be
considered the same problem exactly.

This may have been corrected in the "testing" version of the glibc, but
had no time to check into the source for differences between the two
versions. But straces of the same LDAP client on a stable or testing
machine configured the same in nsswitch.conf and resolv.conf show that
DNS resolution seems to be no longer attempted.

-- System Information
Debian Release: 3.0
Architecture: i386
Kernel: Linux picolibre.int-evry.fr 2.4.21 #1 Mon Sep 15 15:04:20 CEST
2003 i686
Locale: LANG=C, LC_CTYPE=C

-- 
Olivier BERGER <olivier.berger@int-evry.fr>
Ingénieur Recherche - Dept INF
INT Evry (http://www.int-evry.fr)
OpenPGP-Id: 1024D/6B829EEC





Reply to: