mirror of
https://github.com/systemd/systemd.git
synced 2025-03-31 14:50:15 +03:00
network: make RADVPrefixDelegation enum bitfield
This should not change any behavior.
This commit is contained in:
parent
ea121d8f25
commit
61c0ef4ff3
@ -430,9 +430,7 @@ bool link_dhcp6_pd_is_enabled(Link *link) {
|
||||
if (!link->network)
|
||||
return false;
|
||||
|
||||
return IN_SET(link->network->router_prefix_delegation,
|
||||
RADV_PREFIX_DELEGATION_DHCP6,
|
||||
RADV_PREFIX_DELEGATION_BOTH);
|
||||
return link->network->router_prefix_delegation & RADV_PREFIX_DELEGATION_DHCP6;
|
||||
}
|
||||
|
||||
static bool link_has_preferred_subnet_id(Link *link) {
|
||||
|
@ -1394,9 +1394,7 @@ static int link_request_set_addresses(Link *link) {
|
||||
return r;
|
||||
}
|
||||
|
||||
if (IN_SET(link->network->router_prefix_delegation,
|
||||
RADV_PREFIX_DELEGATION_STATIC,
|
||||
RADV_PREFIX_DELEGATION_BOTH))
|
||||
if (link->network->router_prefix_delegation & RADV_PREFIX_DELEGATION_STATIC)
|
||||
LIST_FOREACH(prefixes, p, link->network->static_prefixes) {
|
||||
_cleanup_(address_freep) Address *address = NULL;
|
||||
|
||||
|
@ -650,10 +650,7 @@ int radv_configure(Link *link) {
|
||||
return r;
|
||||
}
|
||||
|
||||
if (IN_SET(link->network->router_prefix_delegation,
|
||||
RADV_PREFIX_DELEGATION_STATIC,
|
||||
RADV_PREFIX_DELEGATION_BOTH)) {
|
||||
|
||||
if (link->network->router_prefix_delegation & RADV_PREFIX_DELEGATION_STATIC) {
|
||||
LIST_FOREACH(prefixes, p, link->network->static_prefixes) {
|
||||
r = sd_radv_add_prefix(link->radv, p->radv_prefix, false);
|
||||
if (r == -EEXIST)
|
||||
@ -673,7 +670,6 @@ int radv_configure(Link *link) {
|
||||
if (r < 0)
|
||||
return r;
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
return 0;
|
||||
|
@ -14,10 +14,10 @@ typedef struct Prefix Prefix;
|
||||
typedef struct RoutePrefix RoutePrefix;
|
||||
|
||||
typedef enum RADVPrefixDelegation {
|
||||
RADV_PREFIX_DELEGATION_NONE,
|
||||
RADV_PREFIX_DELEGATION_STATIC,
|
||||
RADV_PREFIX_DELEGATION_DHCP6,
|
||||
RADV_PREFIX_DELEGATION_BOTH,
|
||||
RADV_PREFIX_DELEGATION_NONE = 0,
|
||||
RADV_PREFIX_DELEGATION_STATIC = 1 << 0,
|
||||
RADV_PREFIX_DELEGATION_DHCP6 = 1 << 1,
|
||||
RADV_PREFIX_DELEGATION_BOTH = RADV_PREFIX_DELEGATION_STATIC | RADV_PREFIX_DELEGATION_DHCP6,
|
||||
_RADV_PREFIX_DELEGATION_MAX,
|
||||
_RADV_PREFIX_DELEGATION_INVALID = -1,
|
||||
} RADVPrefixDelegation;
|
||||
|
Loading…
x
Reference in New Issue
Block a user