* resolv/res_init.c (__res_vinit): Always assign to statp->nscount
authorUlrich Drepper <drepper@redhat.com>
Mon, 8 Dec 2008 03:59:18 +0000 (03:59 +0000)
committerUlrich Drepper <drepper@redhat.com>
Mon, 8 Dec 2008 03:59:18 +0000 (03:59 +0000)
after reading name server list.

ChangeLog
nis/nss_nis/nis-hosts.c
resolv/res_init.c

index 5c752d1..18934f1 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,5 +1,8 @@
 2008-12-07  Ulrich Drepper  <drepper@redhat.com>
 
+       * resolv/res_init.c (__res_vinit): Always assign to statp->nscount
+       after reading name server list.
+
        * nis/nss_nis/nis-hosts.c (_nss_nis_gethostbyname4_r): Fix memory
        handling for host name aliases.
 
index 8accf53..e1db5f5 100644 (file)
@@ -545,8 +545,7 @@ _nss_nis_gethostbyname4_r (const char *name, struct gaih_addrtuple **pat,
   size_t h_name_len = strlen (host.h_name) + 1;
   if (h_name_len >= buflen)
     goto erange;
-  /* Potentially the string and the destination buffer overlap.  */
-  (*pat)->name = memmove (buffer, host.h_name, h_name_len);
+  (*pat)->name = memcpy (buffer, host.h_name, h_name_len);
 
   free (result);
 
index 0cdd55e..670ad23 100644 (file)
@@ -420,8 +420,7 @@ __res_vinit(res_state statp, int preinit) {
                    continue;
                }
            }
-           if (nserv > 1)
-               statp->nscount = nserv;
+           statp->nscount = nserv;
 #ifdef _LIBC
            if (nservall - nserv > 0) {
                statp->_u._ext.nscount6 = nservall - nserv;