]> git-server-git.apps.pok.os.sepia.ceph.com Git - ceph.git/commitdiff
common: FreeBSD wants the correct struct selection for ipv6 21111/head
authorWillem Jan Withagen <wjw@digiware.nl>
Fri, 30 Mar 2018 14:53:48 +0000 (16:53 +0200)
committerWido den Hollander <wido@42on.com>
Tue, 3 Apr 2018 07:17:28 +0000 (09:17 +0200)
Lets see if this also works for Linux

Fixes: http://tracker.ceph.com/issues/21813
Signed-off-by: Willem Jan Withagen <wjw@digiware.nl>
(cherry picked from commit 3806d8ec7c145d0239c94fc5b601d460b36757a5)

src/common/ipaddr.cc

index 27b9cdff2b166cbc70d48ee22f55414960c349c2..c880bfd402e827ee92ffbcffba50d13a3db73fc2 100644 (file)
@@ -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))