summaryrefslogtreecommitdiffhomepage
path: root/src/dhcpv6-ia.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/dhcpv6-ia.c')
-rw-r--r--src/dhcpv6-ia.c5
1 files changed, 3 insertions, 2 deletions
diff --git a/src/dhcpv6-ia.c b/src/dhcpv6-ia.c
index 502373f..8bf42c8 100644
--- a/src/dhcpv6-ia.c
+++ b/src/dhcpv6-ia.c
@@ -36,7 +36,7 @@
#include <libubox/usock.h>
#define ADDR_ENTRY_VALID_IA_ADDR(iface, i, m, addrs) \
- ((iface)->managed == RELAYD_MANAGED_NO_AFLAG || (i) == (m) || \
+ ((iface)->ra_managed == RA_MANAGED_NO_AFLAG || (i) == (m) || \
(addrs)[(i)].prefix > 64)
static void free_dhcpv6_assignment(struct dhcpv6_assignment *c);
@@ -657,7 +657,8 @@ void dhcpv6_ia_preupdate(struct interface *iface)
&iface->ia_assignments, struct dhcpv6_assignment, head);
list_for_each_entry(c, &iface->ia_assignments, head)
- if (c != border && !iface->managed && (c->flags & OAF_BOUND))
+ if (c != border && iface->ra_managed == RA_MANAGED_NO_MFLAG
+ && (c->flags & OAF_BOUND))
apply_lease(iface, c, false);
}