summaryrefslogtreecommitdiff
path: root/resolv/res_send.c
diff options
context:
space:
mode:
Diffstat (limited to 'resolv/res_send.c')
-rw-r--r--resolv/res_send.c4
1 files changed, 3 insertions, 1 deletions
diff --git a/resolv/res_send.c b/resolv/res_send.c
index 6f12b88d6f..86c4f1e0f7 100644
--- a/resolv/res_send.c
+++ b/resolv/res_send.c
@@ -654,7 +654,9 @@ send_vc(res_state statp,
}
__set_errno (0);
if (connect(statp->_vcsock, (struct sockaddr *)nsap,
- sizeof *nsap) < 0) {
+ nsap->sin6_family == AF_INET
+ ? sizeof (struct sockaddr_in)
+ : sizeof (struct sockaddr_in6)) < 0) {
*terrno = errno;
Aerror(statp, stderr, "connect/vc", errno,
(struct sockaddr *) nsap);