network: use RET_GATHER
No functional change intended.
This commit is contained in:
@@ -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;
|
||||
}
|
||||
|
||||
@@ -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
@@ -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;
|
||||
}
|
||||
|
||||
@@ -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;
|
||||
|
||||
@@ -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;
|
||||
|
||||
@@ -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) {
|
||||
|
||||
@@ -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) {
|
||||
|
||||
@@ -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;
|
||||
|
||||
Reference in New Issue
Block a user