diff options
author | Jakub Jelinek <jakub@redhat.com> | 2008-07-03 12:21:19 +0000 |
---|---|---|
committer | Jakub Jelinek <jakub@redhat.com> | 2008-07-03 12:21:19 +0000 |
commit | 1cb6b555a864f401c8a2ba75814e982b66a62971 (patch) | |
tree | 506eb1640092c658b5e31474916d143d7be0200e /sysdeps/posix/getaddrinfo.c | |
parent | e6042ff1eea1f5259df14cf42961898e6c9e6cb1 (diff) |
Updated to fedora-glibc-20080703T1203cvs/fedora-glibc-2_8_90-8
Diffstat (limited to 'sysdeps/posix/getaddrinfo.c')
-rw-r--r-- | sysdeps/posix/getaddrinfo.c | 30 |
1 files changed, 9 insertions, 21 deletions
diff --git a/sysdeps/posix/getaddrinfo.c b/sysdeps/posix/getaddrinfo.c index 5c82b5274a..4987505c5e 100644 --- a/sysdeps/posix/getaddrinfo.c +++ b/sysdeps/posix/getaddrinfo.c @@ -684,6 +684,9 @@ gaih_inet (const char *name, const struct gaih_service *service, "dns [!UNAVAIL=return] files", &nip); + /* Initialize configurations. */ + if (__builtin_expect (!_res_hconf.initialized, 0)) + _res_hconf_init (); if (__res_maybe_init (&_res, 0) == -1) no_more = 1; @@ -883,9 +886,6 @@ gaih_inet (const char *name, const struct gaih_service *service, } } - if (pai == NULL) - return 0; - { struct gaih_servtuple *st2; struct gaih_addrtuple *at2 = at; @@ -2091,10 +2091,6 @@ getaddrinfo (const char *name, const char *service, if ((hints->ai_flags & AI_CANONNAME) && name == NULL) return EAI_BADFLAGS; - /* Initialize configurations. */ - if (__builtin_expect (!_res_hconf.initialized, 0)) - _res_hconf_init (); - struct in6addrinfo *in6ai = NULL; size_t in6ailen = 0; bool seen_ipv4 = false; @@ -2149,11 +2145,7 @@ getaddrinfo (const char *name, const char *service, else pservice = NULL; - struct addrinfo **end; - if (pai) - end = &p; - else - end = NULL; + struct addrinfo **end = &p; unsigned int naddrs = 0; if (hints->ai_family == AF_UNSPEC || hints->ai_family == AF_INET @@ -2167,12 +2159,11 @@ getaddrinfo (const char *name, const char *service, return -(last_i & GAIH_EAI); } - if (end) - while (*end) - { - end = &((*end)->ai_next); - ++nresults; - } + while (*end) + { + end = &((*end)->ai_next); + ++nresults; + } } else { @@ -2368,9 +2359,6 @@ getaddrinfo (const char *name, const char *service, return 0; } - if (pai == NULL && last_i == 0) - return 0; - return last_i ? -(last_i & GAIH_EAI) : EAI_NONAME; } libc_hidden_def (getaddrinfo) |