From 905ef0daeb2fa3d685d924cdd8cbd6a4b19df8b8 Mon Sep 17 00:00:00 2001 From: Ulrich Drepper Date: Mon, 8 Dec 2008 03:59:18 +0000 Subject: [PATCH] * resolv/res_init.c (__res_vinit): Always assign to statp->nscount after reading name server list. --- ChangeLog | 3 +++ nis/nss_nis/nis-hosts.c | 3 +-- resolv/res_init.c | 3 +-- 3 files changed, 5 insertions(+), 4 deletions(-) diff --git a/ChangeLog b/ChangeLog index 5c752d11bf..18934f1aa7 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,5 +1,8 @@ 2008-12-07 Ulrich Drepper + * 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. diff --git a/nis/nss_nis/nis-hosts.c b/nis/nss_nis/nis-hosts.c index 8accf53edf..e1db5f531f 100644 --- a/nis/nss_nis/nis-hosts.c +++ b/nis/nss_nis/nis-hosts.c @@ -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); diff --git a/resolv/res_init.c b/resolv/res_init.c index 0cdd55e71b..670ad23c22 100644 --- a/resolv/res_init.c +++ b/resolv/res_init.c @@ -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; -- 2.11.4.GIT