* sysdeps/posix/getaddrinfo.c (gaih_inet): After gethostbyname4_r

lookup, don't assign canon unconditionally.
This commit is contained in:
Ulrich Drepper 2008-05-16 15:36:26 +00:00
parent 0caca71ac9
commit 91c8a74b8b
2 changed files with 8 additions and 2 deletions

View File

@ -1,3 +1,8 @@
2008-05-16 Ulrich Drepper <drepper@redhat.com>
* sysdeps/posix/getaddrinfo.c (gaih_inet): After gethostbyname4_r
lookup, don't assign canon unconditionally.
2008-05-14 Ulrich Drepper <drepper@redhat.com>
* string/Makefile (distribute): Add str-two-way.h.

View File

@ -729,7 +729,8 @@ gaih_inet (const char *name, const struct gaih_service *service,
if (status == NSS_STATUS_SUCCESS)
{
canon = (*pat)->name;
if ((req->ai_flags & AI_CANONNAME) != 0 && canon == NULL)
canon = (*pat)->name;
while (*pat != NULL)
pat = &((*pat)->next);
@ -953,7 +954,7 @@ gaih_inet (const char *name, const struct gaih_service *service,
return -EAI_IDN_ENCODE;
}
/* In case the output string is the same as the input
string no new string has been allocated. Otherwise
string no new string has been allocated and we
make a copy. */
if (out == canon)
goto make_copy;