1
1
mirror of https://github.com/systemd/systemd-stable.git synced 2025-01-05 09:17:44 +03:00

networkd: address - drop the 'added' flag

Instead instantiate the kernel flags to TENTATIVE until the kernel
updates us with the real value.
This commit is contained in:
Tom Gundersen 2015-11-10 13:52:34 +01:00
parent 6cf4a01c36
commit 63bbe5c767
2 changed files with 3 additions and 3 deletions

View File

@ -248,6 +248,8 @@ static int address_add_internal(Link *link, Set **addresses,
address->family = family;
address->in_addr = *in_addr;
address->prefixlen = prefixlen;
/* Consider address tentative until we get the real flags from the kernel */
address->flags = IFA_F_TENTATIVE;
r = set_ensure_allocated(addresses, &address_hash_ops);
if (r < 0)
@ -333,7 +335,6 @@ int address_update(Address *address, unsigned char flags, unsigned char scope, s
ready = address_is_ready(address);
address->added = true;
address->flags = flags;
address->scope = scope;
address->cinfo = *cinfo;
@ -769,5 +770,5 @@ int config_parse_label(const char *unit,
bool address_is_ready(const Address *a) {
assert(a);
return a->added && !(a->flags & (IFA_F_TENTATIVE | IFA_F_DEPRECATED));
return !(a->flags & (IFA_F_TENTATIVE | IFA_F_DEPRECATED));
}

View File

@ -52,7 +52,6 @@ struct Address {
union in_addr_union in_addr;
union in_addr_union in_addr_peer;
bool added:1;
bool ip_masquerade_done:1;
LIST_FIELDS(Address, addresses);