Handle missing NSS modules and those without callbacks.

getaddrinfo didn't update the status variable in that round of the
loop if no callback was used.
This commit is contained in:
Ulrich Drepper 2009-07-25 12:29:04 -07:00
parent 29e92fa5cd
commit 657317537c
2 changed files with 6 additions and 0 deletions

View File

@ -1,5 +1,9 @@
2009-07-25 Ulrich Drepper <drepper@redhat.com>
[BZ #10448]
* sysdeps/posix/getaddrinfo.c (gaih_inet): If NSS module contains no
callback we must touch the status to avoid using stale value.
* sysdeps/x86_64/multiarch/strcmp.S: Exclude unused code from being
compiled in.

View File

@ -833,6 +833,8 @@ gaih_inet (const char *name, const struct gaih_service *service,
&& inet6_status != NSS_STATUS_UNAVAIL)
status = inet6_status;
}
else
status = NSS_STATUS_UNAVAIL;
}
if (nss_next_action (nip, status) == NSS_ACTION_RETURN)