static int dhcp6_pd_address_callback(Address *address) {
Address *a;
- Iterator i;
assert(address);
assert(address->link);
/* Make this called only once */
- SET_FOREACH(a, address->link->dhcp6_pd_addresses, i)
+ SET_FOREACH(a, address->link->dhcp6_pd_addresses)
a->callback = NULL;
return dhcp6_pd_remove_old(address->link, true);
static int dhcp6_pd_remove_old(Link *link, bool force) {
Address *address;
Route *route;
- Iterator i;
int k, r = 0;
assert(link);
if (!force) {
bool set_callback = !set_isempty(link->dhcp6_pd_addresses);
- SET_FOREACH(address, link->dhcp6_pd_addresses, i)
+ SET_FOREACH(address, link->dhcp6_pd_addresses)
if (address_is_ready(address)) {
set_callback = false;
break;
}
if (set_callback) {
- SET_FOREACH(address, link->dhcp6_pd_addresses, i)
+ SET_FOREACH(address, link->dhcp6_pd_addresses)
address->callback = dhcp6_pd_address_callback;
return 0;
}
link_dirty(link);
- SET_FOREACH(route, link->dhcp6_pd_routes_old, i) {
+ SET_FOREACH(route, link->dhcp6_pd_routes_old) {
k = route_remove(route, link, NULL);
if (k < 0)
r = k;
dhcp6_pd_free(hashmap_get(link->manager->dhcp6_prefixes, &route->dst.in6));
}
- SET_FOREACH(address, link->dhcp6_pd_addresses_old, i) {
+ SET_FOREACH(address, link->dhcp6_pd_addresses_old) {
k = address_remove(address, link, NULL);
if (k < 0)
r = k;
int dhcp6_pd_remove(Link *link) {
Address *address;
Route *route;
- Iterator i;
int k, r = 0;
assert(link);
link_dirty(link);
- SET_FOREACH(route, link->dhcp6_pd_routes, i) {
+ SET_FOREACH(route, link->dhcp6_pd_routes) {
k = route_remove(route, link, NULL);
if (k < 0)
r = k;
dhcp6_pd_free(hashmap_get(link->manager->dhcp6_prefixes, &route->dst.in6));
}
- SET_FOREACH(address, link->dhcp6_pd_addresses, i) {
+ SET_FOREACH(address, link->dhcp6_pd_addresses) {
k = address_remove(address, link, NULL);
if (k < 0)
r = k;
uint32_t lifetime_valid,
bool assign_preferred_subnet_id) {
- Iterator i;
Link *link;
int r;
assert(masked_pd_prefix);
assert(pd_prefix_len <= 64);
- HASHMAP_FOREACH(link, dhcp6_link->manager->links, i) {
+ HASHMAP_FOREACH(link, dhcp6_link->manager->links) {
_cleanup_free_ char *assigned_buf = NULL;
union in_addr_union assigned_prefix;
static void dhcp6_pd_prefix_lost(Link *dhcp6_link) {
Link *link;
- Iterator i;
int r;
assert(dhcp6_link);
assert(dhcp6_link->manager);
- HASHMAP_FOREACH(link, dhcp6_link->manager->links, i) {
+ HASHMAP_FOREACH(link, dhcp6_link->manager->links) {
if (link == dhcp6_link)
continue;
static int dhcp6_address_callback(Address *address) {
Address *a;
- Iterator i;
assert(address);
assert(address->link);
/* Make this called only once */
- SET_FOREACH(a, address->link->dhcp6_addresses, i)
+ SET_FOREACH(a, address->link->dhcp6_addresses)
a->callback = NULL;
return dhcp6_remove_old(address->link, true);
static int dhcp6_remove_old(Link *link, bool force) {
Address *address;
Route *route;
- Iterator i;
int k, r = 0;
assert(link);
if (!force) {
bool set_callback = !set_isempty(link->dhcp6_addresses);
- SET_FOREACH(address, link->dhcp6_addresses, i)
+ SET_FOREACH(address, link->dhcp6_addresses)
if (address_is_ready(address)) {
set_callback = false;
break;
}
if (set_callback) {
- SET_FOREACH(address, link->dhcp6_addresses, i)
+ SET_FOREACH(address, link->dhcp6_addresses)
address->callback = dhcp6_address_callback;
return 0;
}
link_dirty(link);
- SET_FOREACH(route, link->dhcp6_routes_old, i) {
+ SET_FOREACH(route, link->dhcp6_routes_old) {
k = route_remove(route, link, NULL);
if (k < 0)
r = k;
}
- SET_FOREACH(address, link->dhcp6_addresses_old, i) {
+ SET_FOREACH(address, link->dhcp6_addresses_old) {
k = address_remove(address, link, NULL);
if (k < 0)
r = k;
static int dhcp6_remove(Link *link) {
Address *address;
Route *route;
- Iterator i;
int k, r = 0;
assert(link);
link_dirty(link);
- SET_FOREACH(route, link->dhcp6_routes, i) {
+ SET_FOREACH(route, link->dhcp6_routes) {
k = route_remove(route, link, NULL);
if (k < 0)
r = k;
}
- SET_FOREACH(address, link->dhcp6_addresses, i) {
+ SET_FOREACH(address, link->dhcp6_addresses) {
k = address_remove(address, link, NULL);
if (k < 0)
r = k;
}
static int dhcp6_pd_prefix_acquired(Link *dhcp6_link) {
- Iterator i;
Link *link;
int r;
assert(dhcp6_link);
assert(dhcp6_link->dhcp6_lease);
- HASHMAP_FOREACH(link, dhcp6_link->manager->links, i) {
+ HASHMAP_FOREACH(link, dhcp6_link->manager->links) {
if (link == dhcp6_link)
continue;
false);
}
- HASHMAP_FOREACH(link, dhcp6_link->manager->links, i) {
+ HASHMAP_FOREACH(link, dhcp6_link->manager->links) {
if (link == dhcp6_link)
continue;
int dhcp6_request_prefix_delegation(Link *link) {
Link *l;
- Iterator i;
assert(link);
assert(link->manager);
log_link_debug(link, "Requesting DHCPv6 prefixes to be delegated for new link");
- HASHMAP_FOREACH(l, link->manager->links, i) {
+ HASHMAP_FOREACH(l, link->manager->links) {
int r, enabled;
if (l == link)
static bool dhcp6_enable_prefix_delegation(Link *dhcp6_link) {
Link *link;
- Iterator i;
assert(dhcp6_link);
assert(dhcp6_link->manager);
- HASHMAP_FOREACH(link, dhcp6_link->manager->links, i) {
+ HASHMAP_FOREACH(link, dhcp6_link->manager->links) {
if (link == dhcp6_link)
continue;
sd_dhcp6_option *send_option;
void *request_options;
const DUID *duid;
- Iterator i;
int r;
assert(link);
if (r < 0)
return log_link_error_errno(link, r, "DHCP6 CLIENT: Failed to set DUID: %m");
- ORDERED_HASHMAP_FOREACH(send_option, link->network->dhcp6_client_send_options, i) {
+ ORDERED_HASHMAP_FOREACH(send_option, link->network->dhcp6_client_send_options) {
r = sd_dhcp6_client_add_option(client, send_option);
if (r == -EEXIST)
continue;
return log_link_error_errno(link, r, "DHCP6 CLIENT: Failed to set MUD URL: %m");
}
- SET_FOREACH(request_options, link->network->dhcp6_request_options, i) {
+ SET_FOREACH(request_options, link->network->dhcp6_request_options) {
uint32_t option = PTR_TO_UINT32(request_options);
r = sd_dhcp6_client_set_request_option(client, option);
return log_link_error_errno(link, r, "DHCP6 CLIENT: Failed to set vendor class: %m");
}
- ORDERED_HASHMAP_FOREACH(vendor_option, link->network->dhcp6_client_send_vendor_options, i) {
+ ORDERED_HASHMAP_FOREACH(vendor_option, link->network->dhcp6_client_send_vendor_options) {
r = sd_dhcp6_client_add_vendor_option(client, vendor_option);
if (r == -EEXIST)
continue;