[BZ #4726]
authorUlrich Drepper <drepper@redhat.com>
Wed, 22 Aug 2007 04:02:53 +0000 (04:02 +0000)
committerUlrich Drepper <drepper@redhat.com>
Wed, 22 Aug 2007 04:02:53 +0000 (04:02 +0000)
* resolv/res_send.c (__libc_res_nsend): Initialize all of the
memory allocated for the name server address.

ChangeLog
resolv/res_send.c

index e42f82e..1ede0e9 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,5 +1,9 @@
 2007-08-21  Ulrich Drepper  <drepper@redhat.com>
 
+       [BZ #4726]
+       * resolv/res_send.c (__libc_res_nsend): Initialize all of the
+       memory allocated for the name server address.
+
        [BZ #4946]
        * nscd/connections.c (handle_request): Using sendfile always
        requires that mmap is used for the database.
index 27dd1d4..23306a2 100644 (file)
@@ -425,9 +425,12 @@ __libc_res_nsend(res_state statp, const u_char *buf, int buflen,
                                EXT(statp).nsaddrs[n] =
                                    malloc(sizeof (struct sockaddr_in6));
                        if (EXT(statp).nsaddrs[n] != NULL) {
-                               memcpy(EXT(statp).nsaddrs[n],
-                                      &statp->nsaddr_list[ns],
-                                      sizeof (struct sockaddr_in));
+                               memset (mempcpy(EXT(statp).nsaddrs[n],
+                                               &statp->nsaddr_list[ns],
+                                               sizeof (struct sockaddr_in)),
+                                       '\0',
+                                       sizeof (struct sockaddr_in6)
+                                       - sizeof (struct sockaddr_in));
                                EXT(statp).nssocks[n] = -1;
                                n++;
                        }