From 8f200a7291c0400c288ba6745bb78bbb80a9d0ed Mon Sep 17 00:00:00 2001
From: Vjaceslavs Klimovs <vklimovs@gmail.com>
Date: Fri, 9 Oct 2026 16:38:04 -0700
Subject: [PATCH] address: keep renewed dynamic addresses (regression by
 0b95723f4)

---
 src/libifstate/address/__init__.py | 13 ++++---------
 1 file changed, 4 insertions(+), 9 deletions(-)

diff --git a/src/libifstate/address/__init__.py b/src/libifstate/address/__init__.py
index c002e1b..d7689b6 100644
--- a/src/libifstate/address/__init__.py
+++ b/src/libifstate/address/__init__.py
@@ -185,15 +185,10 @@ class Addresses:
                     ignore = True
                     break
 
-            if (
-                ip in addr_renew
-                or not ignore
-                and (
-                    not ign_dynamic
-                    or addr["ifa_flags"]
-                    & (IFA_F_PERMANENT | IFA_F_STABLE_PRIVACY)
-                    == IFA_F_PERMANENT
-                )
+            if (ip in addr_renew or not ignore) and (
+                not ign_dynamic
+                or addr["ifa_flags"] & (IFA_F_PERMANENT | IFA_F_STABLE_PRIVACY)
+                == IFA_F_PERMANENT
             ):
                 logger.log_del("addresses", f"- {ip.with_prefixlen}")
                 try:
-- 
2.55.0

