No functional change, just refactoring.
}
static int link_admin_state_up(Link *link) {
- int r;
-
assert(link);
/* This is called every time an interface admin state changes to up;
/* We set the ipv6 mtu after the device mtu, but the kernel resets
* ipv6 mtu on NETDEV_UP, so we need to reset it. */
- r = link_set_ipv6_mtu(link, LOG_INFO);
- if (r < 0)
- log_link_warning_errno(link, r, "Cannot set IPv6 MTU, ignoring: %m");
+ (void) link_set_ipv6_mtu(link, LOG_INFO);
return 0;
}
link->mtu = mtu;
- if (IN_SET(link->state, LINK_STATE_CONFIGURING, LINK_STATE_CONFIGURED)) {
+ if (IN_SET(link->state, LINK_STATE_CONFIGURING, LINK_STATE_CONFIGURED))
/* The kernel resets IPv6 MTU after changing device MTU. So, we need to re-set IPv6 MTU again. */
- r = link_set_ipv6_mtu(link, LOG_INFO);
- if (r < 0)
- log_link_warning_errno(link, r, "Failed to set IPv6 MTU, ignoring: %m");
- }
+ (void) link_set_ipv6_mtu(link, LOG_INFO);
if (link->dhcp_client) {
r = sd_dhcp_client_set_mtu(link->dhcp_client, link->mtu);
link->ndisc_mtu = mtu;
- r = link_set_ipv6_mtu(link, LOG_DEBUG);
- if (r < 0)
- log_link_warning_errno(link, r, "Failed to apply IPv6 MTU (%"PRIu32"), ignoring: %m", mtu);
+ (void) link_set_ipv6_mtu(link, LOG_DEBUG);
return 0;
}
int link_set_ipv6_mtu(Link *link, int log_level) {
uint32_t mtu = 0;
+ int r;
assert(link);
assert(link->manager);
mtu = link->mtu;
}
- return sysctl_write_ip_property_uint32(AF_INET6, link->ifname, "mtu", mtu, manager_get_sysctl_shadow(link->manager));
+ r = sysctl_write_ip_property_uint32(AF_INET6, link->ifname, "mtu", mtu, manager_get_sysctl_shadow(link->manager));
+ if (r < 0)
+ return log_link_warning_errno(link, r, "Failed to set IPv6 MTU to %"PRIu32": %m", mtu);
+
+ return 0;
}
static int link_set_ipv4_accept_local(Link *link) {
if (r < 0)
log_link_warning_errno(link, r, "Cannot set IPv6 proxy NDP, ignoring: %m");
- r = link_set_ipv6_mtu(link, LOG_INFO);
- if (r < 0)
- log_link_warning_errno(link, r, "Cannot set IPv6 MTU, ignoring: %m");
+ (void) link_set_ipv6_mtu(link, LOG_INFO);
r = link_set_ipv6ll_stable_secret(link);
if (r < 0)