From: Jelte Jansen Date: Tue, 15 Jan 2013 09:29:47 +0000 (+0100) Subject: [2587] use sockaddr_storage X-Git-Tag: bind10-1.0.0-rc-release~95^2~3 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=914eb9b64bfcf703c2538cbf20b9c82bfbdfb525;p=thirdparty%2Fkea.git [2587] use sockaddr_storage --- diff --git a/src/bin/auth/tests/auth_srv_unittest.cc b/src/bin/auth/tests/auth_srv_unittest.cc index 171527c4ea..c3b794b9d4 100644 --- a/src/bin/auth/tests/auth_srv_unittest.cc +++ b/src/bin/auth/tests/auth_srv_unittest.cc @@ -1720,13 +1720,16 @@ checkAddrPort(const struct sockaddr& actual_sa, // systems, but it will make getnameinfo() fail on NetBSD 4 // So we make a copy and if the field is available, we set it const socklen_t sa_len = getSALength(actual_sa); - struct sockaddr sa; - memcpy(&sa, &actual_sa, sa_len); + struct sockaddr_storage ss; + memcpy(&ss, &actual_sa, sa_len); + + struct sockaddr* sa = + static_cast(static_cast(&ss)); #ifdef HAVE_SA_LEN - sa.sa_len = sa_len; + sa->sa_len = sa_len; #endif char hbuf[NI_MAXHOST], sbuf[NI_MAXSERV]; - const int error = getnameinfo(&sa, sa_len, hbuf, sizeof(hbuf), + const int error = getnameinfo(sa, sa_len, hbuf, sizeof(hbuf), sbuf, sizeof(sbuf), NI_NUMERICHOST | NI_NUMERICSERV); if (error != 0) {