From d3067335208f290218a41c813b682fb7babbd692 Mon Sep 17 00:00:00 2001 From: Willem Jan Withagen Date: Fri, 30 Mar 2018 16:53:48 +0200 Subject: [PATCH] common: FreeBSD wants the correct struct selection for ipv6 Lets see if this also works for Linux Fixes: http://tracker.ceph.com/issues/21813 Signed-off-by: Willem Jan Withagen (cherry picked from commit 3806d8ec7c145d0239c94fc5b601d460b36757a5) --- src/common/ipaddr.cc | 2 ++ 1 file changed, 2 insertions(+) diff --git a/src/common/ipaddr.cc b/src/common/ipaddr.cc index 27b9cdff2b1..c880bfd402e 100644 --- a/src/common/ipaddr.cc +++ b/src/common/ipaddr.cc @@ -90,6 +90,8 @@ const struct ifaddrs *find_ipv6_in_subnet(const struct ifaddrs *addrs, continue; struct in6_addr *cur = &((struct sockaddr_in6*)addrs->ifa_addr)->sin6_addr; + if (IN6_IS_ADDR_LINKLOCAL(cur)) + continue; netmask_ipv6(cur, prefix_len, &temp); if (IN6_ARE_ADDR_EQUAL(&temp, &want)) -- 2.47.3