From: Yu Watanabe Date: Wed, 8 Sep 2021 07:18:52 +0000 (+0900) Subject: network: do not drop IPv6LL address in link_drop_addresses() X-Git-Tag: v250-rc1~691^2 X-Git-Url: http://git.ipfire.org/gitweb.cgi?a=commitdiff_plain;h=refs%2Fpull%2F20701%2Fhead;p=thirdparty%2Fsystemd.git network: do not drop IPv6LL address in link_drop_addresses() --- diff --git a/src/network/networkd-address.c b/src/network/networkd-address.c index 1b8f52fcbfd..a8856979692 100644 --- a/src/network/networkd-address.c +++ b/src/network/networkd-address.c @@ -882,7 +882,7 @@ int link_drop_foreign_addresses(Link *link) { SET_FOREACH(address, link->addresses_foreign) { /* We consider IPv6LL addresses to be managed by the kernel, or dropped in link_drop_ipv6ll_addresses() */ - if (address->family == AF_INET6 && in6_addr_is_link_local(&address->in_addr.in6) == 1) + if (address->family == AF_INET6 && in6_addr_is_link_local(&address->in_addr.in6)) continue; if (link_address_is_dynamic(link, address)) { @@ -915,8 +915,8 @@ int link_drop_addresses(Link *link) { assert(link); SET_FOREACH(address, link->addresses) { - /* we consider IPv6LL addresses to be managed by the kernel */ - if (address->family == AF_INET6 && in6_addr_is_link_local(&address->in_addr.in6) == 1 && link_ipv6ll_enabled(link)) + /* We consider IPv6LL addresses to be managed by the kernel, or dropped in link_drop_ipv6ll_addresses() */ + if (address->family == AF_INET6 && in6_addr_is_link_local(&address->in_addr.in6)) continue; k = address_remove(address, link);