From 57445b53fb01e2ddd65530496b650131d7e437fb Mon Sep 17 00:00:00 2001 From: Yu Watanabe Date: Tue, 12 Feb 2019 13:03:57 +0900 Subject: [PATCH] network: add missing error check --- src/network/networkd-dhcp6.c | 26 ++++++++++++++++++-------- 1 file changed, 18 insertions(+), 8 deletions(-) diff --git a/src/network/networkd-dhcp6.c b/src/network/networkd-dhcp6.c index a95cd55b2c..90361c9f4a 100644 --- a/src/network/networkd-dhcp6.c +++ b/src/network/networkd-dhcp6.c @@ -142,10 +142,15 @@ int dhcp6_lease_pd_prefix_lost(sd_dhcp6_client *client, Link* link) { continue; } - route_add(link, AF_INET6, &pd_prefix, pd_prefix_len, - 0, 0, 0, &route); - route_update(route, NULL, 0, NULL, NULL, 0, 0, - RTN_UNREACHABLE); + r = route_add(link, AF_INET6, &pd_prefix, pd_prefix_len, 0, 0, 0, &route); + if (r < 0) { + log_link_warning_errno(link, r, "Failed to add unreachable route to delete for DHCPv6 delegated subnet %s/%u: %m", + strnull(buf), + pd_prefix_len); + continue; + } + + route_update(route, NULL, 0, NULL, NULL, 0, 0, RTN_UNREACHABLE); r = route_remove(route, link, dhcp6_route_remove_handler); if (r < 0) { @@ -303,10 +308,15 @@ static int dhcp6_lease_pd_prefix_acquired(sd_dhcp6_client *client, Link *link) { table = link_get_dhcp_route_table(link); - route_add(link, AF_INET6, &pd_prefix, pd_prefix_len, - 0, 0, table, &route); - route_update(route, NULL, 0, NULL, NULL, 0, 0, - RTN_UNREACHABLE); + r = route_add(link, AF_INET6, &pd_prefix, pd_prefix_len, 0, 0, table, &route); + if (r < 0) { + log_link_warning_errno(link, r, "Failed to add unreachable route for DHCPv6 delegated subnet %s/%u: %m", + strnull(buf), + pd_prefix_len); + continue; + } + + route_update(route, NULL, 0, NULL, NULL, 0, 0, RTN_UNREACHABLE); r = route_configure(route, link, dhcp6_route_handler); if (r < 0) {