Note that manually adding an IPv6 address without disabling duplicate
address detection (DAD, e.g. via `nodad` when using iproute2) will cause
a roam event due to a flag change after about 1-2 seconds (TENTATIVE is
removed). If this is a problem, we might have to ignore addresses with
TENTATIVE flag when we receive a RTM_NEWADDR message until that flag is
eventually removed.
Fixes #3511.
addr_map_entry_remove(this->addrs, addr, iface);
addr_entry_destroy(addr);
}
+ else if (entry->addr->flags != msg->ifa_flags)
+ {
+ found = TRUE;
+ entry->addr->flags = msg->ifa_flags;
+ if (event && iface->usable)
+ {
+ changed = TRUE;
+ DBG1(DBG_KNL, "flags changed for %H on %s", host,
+ iface->ifname);
+ }
+ }
}
else
{