From 3c0de5f3b6e5a0dc8f1bdd22b007b70170b91dc4 Mon Sep 17 00:00:00 2001 From: Roy Marples Date: Wed, 25 May 2016 19:54:07 +0000 Subject: [PATCH] Report the first non requested address. --- dhcp6.c | 11 ++++++++--- 1 file changed, 8 insertions(+), 3 deletions(-) diff --git a/dhcp6.c b/dhcp6.c index 90f70ede..70c00dab 100644 --- a/dhcp6.c +++ b/dhcp6.c @@ -2948,9 +2948,14 @@ dhcp6_handledata(void *arg) case DHCP6_ADVERTISE: if (state->state == DH6S_REQUEST) /* rapid commit */ break; - ap = TAILQ_FIRST(&state->addrs); - logger(ifp->ctx, LOG_INFO, "%s: ADV %s from %s", - ifp->name, ap->saddr, ctx->sfrom); + TAILQ_FOREACH(ap, &state->addrs, next) { + if (!(ap->flags & IPV6_AF_REQUEST)) + break; + } + if (ap == NULL) + ap = TAILQ_FIRST(&state->addrs); + logger(ifp->ctx, LOG_INFO, "%s: ADV %p %s from %s", + ifp->name, ap, ap->saddr, ctx->sfrom); if (ifp->ctx->options & DHCPCD_TEST) break; dhcp6_startrequest(ifp); -- 2.47.3