From f7a40ec650999d96bc71f78533540328d0c3d1f0 Mon Sep 17 00:00:00 2001 From: Simon Kelley Date: Sat, 27 Jul 2013 13:36:08 +0100 Subject: [PATCH] Tweak when old prefix returns. --- src/dhcp6.c | 10 +++++++++- 1 file changed, 9 insertions(+), 1 deletion(-) diff --git a/src/dhcp6.c b/src/dhcp6.c index 7b6aaf5..19e3cde 100644 --- a/src/dhcp6.c +++ b/src/dhcp6.c @@ -555,7 +555,15 @@ static int construct_worker(struct in6_addr *local, int prefix, int flags = context->flags; context->flags &= ~(CONTEXT_GC | CONTEXT_OLD); if (flags & CONTEXT_OLD) - log_context(AF_INET6, context); + { + /* address went, now it's back */ + log_context(AF_INET6, context); + /* fast RAs for a while */ + ra_start_unsolicted(param->now, context); + /* Add address to name again */ + if (context->flags & CONTEXT_RA_NAME) + param->newname = 1; + } break; }