diff --git a/lib/krb5/get_addrs.c b/lib/krb5/get_addrs.c index fe2df0c91..649384cbb 100644 --- a/lib/krb5/get_addrs.c +++ b/lib/krb5/get_addrs.c @@ -168,11 +168,9 @@ find_all_addresses (krb5_context context, #ifdef HAVE_STRUCT_SOCKADDR_SA_LEN sz = max(sz, sizeof(ifr->ifr_name) + sa->sa_len); #endif -#ifdef HAVE_IPV6 - if (sa->sa_family == AF_INET6) - sz = max(sz, sizeof(ifr->ifr_name) + sizeof(struct sockaddr_in6)); +#ifdef SA_LEN + sz = max(sz, SA_LEN(sa)); #endif - memcpy (ifreq.ifr_name, ifr->ifr_name, sizeof(ifr->ifr_name)); if (ioctl(fd, siocgifflags, &ifreq) < 0) {