mirror of
https://gitlab.freedesktop.org/NetworkManager/NetworkManager.git
synced 2025-12-25 07:10:07 +01:00
platform: fix setting preferred time for address
Before nm_platform_ip4_address_sync() set the preferred time to the same value as the address lifetime. The result was that the preferred time was always identical to valid lifetime. This will lead to the kernel using the address longer then the desired preferred time (until validity of the address expires). https://bugzilla.redhat.com/show_bug.cgi?id=1082041 https://bugzilla.redhat.com/show_bug.cgi?id=1083283 Reported-by: Kai Engert <kengert@redhat.com> Signed-off-by: Thomas Haller <thaller@redhat.com>
This commit is contained in:
parent
84cfd06d6a
commit
d90b9ff2c8
1 changed files with 2 additions and 2 deletions
|
|
@ -1611,7 +1611,7 @@ nm_platform_ip4_address_sync (int ifindex, const GArray *known_addresses)
|
|||
guint32 shift = subtract_guint32 (now, known_address->timestamp + 5);
|
||||
|
||||
lifetime = subtract_guint32 (known_address->lifetime, shift);
|
||||
preferred = subtract_guint32 (known_address->lifetime, shift);
|
||||
preferred = subtract_guint32 (known_address->preferred, shift);
|
||||
|
||||
g_warn_if_fail (known_address->preferred <= known_address->lifetime);
|
||||
} else
|
||||
|
|
@ -1670,7 +1670,7 @@ nm_platform_ip6_address_sync (int ifindex, const GArray *known_addresses)
|
|||
guint32 shift = subtract_guint32 (now, known_address->timestamp + 5);
|
||||
|
||||
lifetime = subtract_guint32 (known_address->lifetime, shift);
|
||||
preferred = subtract_guint32 (known_address->lifetime, shift);
|
||||
preferred = subtract_guint32 (known_address->preferred, shift);
|
||||
|
||||
g_warn_if_fail (known_address->preferred <= known_address->lifetime);
|
||||
} else
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue