network: use RET_GATHER

No functional change intended.
This commit is contained in:
Zbigniew Jędrzejewski-Szmek
2023-07-13 11:40:15 +02:00
parent eb6cae1a40
commit 1339b950cf
8 changed files with 47 additions and 122 deletions
+8 -18
View File
@@ -102,32 +102,22 @@ static int context_save(Context *context) {
Network *network;
NetDev *netdev;
Link *link;
int k, r;
const char *p;
int r;
p = prefix_roota(arg_root, NETWORKD_UNIT_DIRECTORY);
const char *p = prefix_roota(arg_root, NETWORKD_UNIT_DIRECTORY);
r = mkdir_p(p, 0755);
if (r < 0)
return log_error_errno(r, "Failed to create directory " NETWORKD_UNIT_DIRECTORY ": %m");
HASHMAP_FOREACH(network, context->networks_by_name) {
k = network_save(network, p);
if (k < 0 && r >= 0)
r = k;
}
HASHMAP_FOREACH(network, context->networks_by_name)
RET_GATHER(r, network_save(network, p));
HASHMAP_FOREACH(netdev, context->netdevs_by_name) {
k = netdev_save(netdev, p);
if (k < 0 && r >= 0)
r = k;
}
HASHMAP_FOREACH(netdev, context->netdevs_by_name)
RET_GATHER(r, netdev_save(netdev, p));
HASHMAP_FOREACH(link, context->links_by_filename) {
k = link_save(link, p);
if (k < 0 && r >= 0)
r = k;
}
HASHMAP_FOREACH(link, context->links_by_filename)
RET_GATHER(r, link_save(link, p));
return r;
}
+4 -10
View File
@@ -986,7 +986,7 @@ int link_drop_ipv6ll_addresses(Link *link) {
int link_drop_foreign_addresses(Link *link) {
Address *address;
int k, r = 0;
int r = 0;
assert(link);
assert(link->network);
@@ -1046,9 +1046,7 @@ int link_drop_foreign_addresses(Link *link) {
if (!address_is_marked(address))
continue;
k = address_remove(address);
if (k < 0 && r >= 0)
r = k;
RET_GATHER(r, address_remove(address));
}
return r;
@@ -1056,7 +1054,7 @@ int link_drop_foreign_addresses(Link *link) {
int link_drop_managed_addresses(Link *link) {
Address *address;
int k, r = 0;
int r = 0;
assert(link);
@@ -1069,11 +1067,7 @@ int link_drop_managed_addresses(Link *link) {
if (!address_exists(address))
continue;
k = address_remove(address);
if (k < 0 && r >= 0) {
r = k;
continue;
}
RET_GATHER(r, address_remove(address));
}
return r;
+10 -32
View File
@@ -950,7 +950,7 @@ static Link *link_drop(Link *link) {
}
static int link_drop_foreign_config(Link *link) {
int k, r;
int r;
assert(link);
assert(link->manager);
@@ -967,48 +967,26 @@ static int link_drop_foreign_config(Link *link) {
r = link_drop_foreign_routes(link);
k = link_drop_foreign_nexthops(link);
if (k < 0 && r >= 0)
r = k;
k = link_drop_foreign_addresses(link);
if (k < 0 && r >= 0)
r = k;
k = link_drop_foreign_neighbors(link);
if (k < 0 && r >= 0)
r = k;
k = manager_drop_foreign_routing_policy_rules(link->manager);
if (k < 0 && r >= 0)
r = k;
RET_GATHER(r, link_drop_foreign_nexthops(link));
RET_GATHER(r, link_drop_foreign_addresses(link));
RET_GATHER(r, link_drop_foreign_neighbors(link));
RET_GATHER(r, manager_drop_foreign_routing_policy_rules(link->manager));
return r;
}
static int link_drop_managed_config(Link *link) {
int k, r;
int r;
assert(link);
assert(link->manager);
r = link_drop_managed_routes(link);
k = link_drop_managed_nexthops(link);
if (k < 0 && r >= 0)
r = k;
k = link_drop_managed_addresses(link);
if (k < 0 && r >= 0)
r = k;
k = link_drop_managed_neighbors(link);
if (k < 0 && r >= 0)
r = k;
k = link_drop_managed_routing_policy_rules(link);
if (k < 0 && r >= 0)
r = k;
RET_GATHER(r, link_drop_managed_nexthops(link));
RET_GATHER(r, link_drop_managed_addresses(link));
RET_GATHER(r, link_drop_managed_neighbors(link));
RET_GATHER(r, link_drop_managed_routing_policy_rules(link));
return r;
}
+3 -6
View File
@@ -723,7 +723,7 @@ static int manager_enumerate_internal(
int (*process)(sd_netlink *, sd_netlink_message *, Manager *)) {
_cleanup_(sd_netlink_message_unrefp) sd_netlink_message *reply = NULL;
int k, r;
int r;
assert(m);
assert(nl);
@@ -739,11 +739,8 @@ static int manager_enumerate_internal(
return r;
m->enumerating = true;
for (sd_netlink_message *reply_one = reply; reply_one; reply_one = sd_netlink_message_next(reply_one)) {
k = process(nl, reply_one, m);
if (k < 0 && r >= 0)
r = k;
}
for (sd_netlink_message *reply_one = reply; reply_one; reply_one = sd_netlink_message_next(reply_one))
RET_GATHER(r, process(nl, reply_one, m));
m->enumerating = false;
return r;
+4 -8
View File
@@ -377,7 +377,7 @@ static int neighbor_remove(Neighbor *neighbor) {
int link_drop_foreign_neighbors(Link *link) {
Neighbor *neighbor;
int k, r = 0;
int r = 0;
assert(link);
assert(link->network);
@@ -407,9 +407,7 @@ int link_drop_foreign_neighbors(Link *link) {
if (!neighbor_is_marked(neighbor))
continue;
k = neighbor_remove(neighbor);
if (k < 0 && r >= 0)
r = k;
RET_GATHER(r, neighbor_remove(neighbor));
}
return r;
@@ -417,7 +415,7 @@ int link_drop_foreign_neighbors(Link *link) {
int link_drop_managed_neighbors(Link *link) {
Neighbor *neighbor;
int k, r = 0;
int r = 0;
assert(link);
@@ -430,9 +428,7 @@ int link_drop_managed_neighbors(Link *link) {
if (!neighbor_exists(neighbor))
continue;
k = neighbor_remove(neighbor);
if (k < 0 && r >= 0)
r = k;
RET_GATHER(r, neighbor_remove(neighbor));
}
return r;
+8 -22
View File
@@ -687,7 +687,7 @@ static void manager_mark_nexthops(Manager *manager, bool foreign, const Link *ex
static int manager_drop_marked_nexthops(Manager *manager) {
NextHop *nexthop;
int k, r = 0;
int r = 0;
assert(manager);
@@ -695,9 +695,7 @@ static int manager_drop_marked_nexthops(Manager *manager) {
if (!nexthop_is_marked(nexthop))
continue;
k = nexthop_remove(nexthop);
if (k < 0 && r >= 0)
r = k;
RET_GATHER(r, nexthop_remove(nexthop));
}
return r;
@@ -705,7 +703,7 @@ static int manager_drop_marked_nexthops(Manager *manager) {
int link_drop_foreign_nexthops(Link *link) {
NextHop *nexthop;
int k, r = 0;
int r = 0;
assert(link);
assert(link->manager);
@@ -741,23 +739,17 @@ int link_drop_foreign_nexthops(Link *link) {
if (!nexthop_is_marked(nexthop))
continue;
k = nexthop_remove(nexthop);
if (k < 0 && r >= 0)
r = k;
RET_GATHER(r, nexthop_remove(nexthop));
}
manager_mark_nexthops(link->manager, /* foreign = */ true, NULL);
k = manager_drop_marked_nexthops(link->manager);
if (k < 0 && r >= 0)
r = k;
return r;
return RET_GATHER(r, manager_drop_marked_nexthops(link->manager));
}
int link_drop_managed_nexthops(Link *link) {
NextHop *nexthop;
int k, r = 0;
int r = 0;
assert(link);
assert(link->manager);
@@ -775,18 +767,12 @@ int link_drop_managed_nexthops(Link *link) {
if (!nexthop_exists(nexthop))
continue;
k = nexthop_remove(nexthop);
if (k < 0 && r >= 0)
r = k;
RET_GATHER(r, nexthop_remove(nexthop));
}
manager_mark_nexthops(link->manager, /* foreign = */ false, link);
k = manager_drop_marked_nexthops(link->manager);
if (k < 0 && r >= 0)
r = k;
return r;
return RET_GATHER(r, manager_drop_marked_nexthops(link->manager));
}
void link_foreignize_nexthops(Link *link) {
+8 -22
View File
@@ -857,7 +857,7 @@ static void manager_mark_routes(Manager *manager, bool foreign, const Link *exce
static int manager_drop_marked_routes(Manager *manager) {
Route *route;
int k, r = 0;
int r = 0;
assert(manager);
@@ -865,9 +865,7 @@ static int manager_drop_marked_routes(Manager *manager) {
if (!route_is_marked(route))
continue;
k = route_remove(route);
if (k < 0 && r >= 0)
r = k;
RET_GATHER(r, route_remove(route));
}
return r;
@@ -907,7 +905,7 @@ static void link_unmark_wireguard_routes(Link *link) {
int link_drop_foreign_routes(Link *link) {
Route *route;
int k, r;
int r;
assert(link);
assert(link->manager);
@@ -962,23 +960,17 @@ int link_drop_foreign_routes(Link *link) {
if (!route_is_marked(route))
continue;
k = route_remove(route);
if (k < 0 && r >= 0)
r = k;
RET_GATHER(r, route_remove(route));
}
manager_mark_routes(link->manager, /* foreign = */ true, NULL);
k = manager_drop_marked_routes(link->manager);
if (k < 0 && r >= 0)
r = k;
return r;
return RET_GATHER(r, manager_drop_marked_routes(link->manager));
}
int link_drop_managed_routes(Link *link) {
Route *route;
int k, r = 0;
int r = 0;
assert(link);
@@ -994,18 +986,12 @@ int link_drop_managed_routes(Link *link) {
if (!route_exists(route))
continue;
k = route_remove(route);
if (k < 0 && r >= 0)
r = k;
RET_GATHER(r, route_remove(route));
}
manager_mark_routes(link->manager, /* foreign = */ false, link);
k = manager_drop_marked_routes(link->manager);
if (k < 0 && r >= 0)
r = k;
return r;
return RET_GATHER(r, manager_drop_marked_routes(link->manager));
}
void link_foreignize_routes(Link *link) {
+2 -4
View File
@@ -684,7 +684,7 @@ static void manager_mark_routing_policy_rules(Manager *m, bool foreign, const Li
int manager_drop_routing_policy_rules_internal(Manager *m, bool foreign, const Link *except) {
RoutingPolicyRule *rule;
int k, r = 0;
int r = 0;
assert(m);
@@ -694,9 +694,7 @@ int manager_drop_routing_policy_rules_internal(Manager *m, bool foreign, const L
if (!routing_policy_rule_is_marked(rule))
continue;
k = routing_policy_rule_remove(rule);
if (k < 0 && r >= 0)
r = k;
RET_GATHER(r, routing_policy_rule_remove(rule));
}
return r;