From a58d4f5d3f62b2bf0bec615370c3d98b35c06c27 Mon Sep 17 00:00:00 2001 From: Thomas Haller Date: Fri, 9 Mar 2018 16:17:31 +0100 Subject: [PATCH] device: use nm_ip6_config_find_first_address() in check_and_add_ipv6ll_addr() --- src/devices/nm-device.c | 18 +++++++----------- 1 file changed, 7 insertions(+), 11 deletions(-) diff --git a/src/devices/nm-device.c b/src/devices/nm-device.c index 8d79738302..a82deb4fe3 100644 --- a/src/devices/nm-device.c +++ b/src/devices/nm-device.c @@ -7470,17 +7470,13 @@ check_and_add_ipv6ll_addr (NMDevice *self) if (!priv->ipv6ll_handle) return; - if (priv->ext_ip6_config_captured) { - NMDedupMultiIter ipconf_iter; - const NMPlatformIP6Address *addr; - - nm_ip_config_iter_ip6_address_for_each (&ipconf_iter, priv->ext_ip6_config_captured, &addr) { - if ( IN6_IS_ADDR_LINKLOCAL (&addr->address) - && !(addr->n_ifa_flags & IFA_F_DADFAILED)) { - /* Already have an LL address, nothing to do */ - return; - } - } + if ( priv->ext_ip6_config_captured + && nm_ip6_config_find_first_address (priv->ext_ip6_config_captured, + NM_PLATFORM_MATCH_WITH_ADDRTYPE_LINKLOCAL + | NM_PLATFORM_MATCH_WITH_ADDRSTATE_NORMAL + | NM_PLATFORM_MATCH_WITH_ADDRSTATE_TENTATIVE)) { + /* Already have an LL address, nothing to do */ + return; } memset (&lladdr, 0, sizeof (lladdr));