From: Yu Watanabe Date: Wed, 13 Oct 2021 17:54:20 +0000 (+0900) Subject: network: dhcp6: always assign prefix through dhcp6_pd_assign_prefix() X-Git-Tag: v250-rc1~475^2~1 X-Git-Url: http://git.ipfire.org/gitweb.cgi?a=commitdiff_plain;h=63e43d08006fc8f2caaa8f826167609bbaf580a0;p=thirdparty%2Fsystemd.git network: dhcp6: always assign prefix through dhcp6_pd_assign_prefix() For uplink interface, we request Assign= is enabled in the above. So, we can always use dhcp6_pd_assign_prefix(). Just a minor simplification for later commits. --- diff --git a/src/network/networkd-dhcp6.c b/src/network/networkd-dhcp6.c index da8a882072c..9638c7ea76c 100644 --- a/src/network/networkd-dhcp6.c +++ b/src/network/networkd-dhcp6.c @@ -556,20 +556,17 @@ static int dhcp6_pd_prefix_distribute( } (void) in6_addr_prefix_to_string(&assigned_prefix, 64, &buf); - if (link == dhcp6_link) { - r = dhcp6_pd_request_address(link, &assigned_prefix, lifetime_preferred, lifetime_valid); - if (r < 0) - return log_link_warning_errno(link, r, "Failed to assign addresses in prefix %s: %m", strna(buf)); + r = dhcp6_pd_assign_prefix(link, &assigned_prefix, lifetime_preferred, lifetime_valid); + if (r < 0) { + log_link_warning_errno(link, r, "Failed to assign/update prefix %s: %m", strna(buf)); + if (link == dhcp6_link) + return r; - log_link_debug(link, "Assigned addresses in prefix %s: %m", strna(buf)); - } else { - r = dhcp6_pd_assign_prefix(link, &assigned_prefix, lifetime_preferred, lifetime_valid); - if (r < 0) { - log_link_error_errno(link, r, "Failed to assign/update prefix %s: %m", strna(buf)); - link_enter_failed(link); - } else - log_link_debug(link, "Assigned prefix %s", strna(buf)); + link_enter_failed(link); + continue; } + + log_link_debug(link, "Assigned prefix %s", strna(buf)); } return 0;