network: move link_radv_enabled()

This commit is contained in:
Yu Watanabe 2020-10-02 16:39:45 +09:00
parent 5ae0fb7fb7
commit 086b8853d1
2 changed files with 16 additions and 15 deletions

View File

@ -135,15 +135,6 @@ static bool link_ipv6_enabled(Link *link) {
return false;
}
static bool link_radv_enabled(Link *link) {
assert(link);
if (!link_ipv6ll_enabled(link))
return false;
return link->network->router_prefix_delegation != RADV_PREFIX_DELEGATION_NONE;
}
bool link_ip_forward_enabled(Link *link, int family) {
assert(link);
assert(IN_SET(family, AF_INET, AF_INET6));
@ -1185,7 +1176,7 @@ static int link_acquire_ipv6_conf(Link *link) {
return log_link_warning_errno(link, r, "Could not start IPv6 Router Discovery: %m");
}
if (link_radv_enabled(link)) {
if (link->radv) {
assert(link->radv);
assert(in_addr_is_link_local(AF_INET6, (const union in_addr_union*)&link->ipv6ll_address) > 0);
@ -2406,11 +2397,9 @@ static int link_configure(Link *link) {
return r;
}
if (link_radv_enabled(link)) {
r = radv_configure(link);
if (r < 0)
return r;
}
r = radv_configure(link);
if (r < 0)
return r;
if (link_lldp_rx_enabled(link)) {
r = link_lldp_rx_configure(link);

View File

@ -602,12 +602,24 @@ int radv_emit_dns(Link *link) {
return 0;
}
static bool link_radv_enabled(Link *link) {
assert(link);
if (!link_ipv6ll_enabled(link))
return false;
return link->network->router_prefix_delegation != RADV_PREFIX_DELEGATION_NONE;
}
int radv_configure(Link *link) {
int r;
assert(link);
assert(link->network);
if (!link_radv_enabled(link))
return 0;
r = sd_radv_new(&link->radv);
if (r < 0)
return r;