From 30d445bd39ba82df958c4e61b9400872c1b7b82f Mon Sep 17 00:00:00 2001 From: David Girault Date: Tue, 25 Jun 2019 11:12:18 +0200 Subject: [PATCH] acd: inform address is good only when going in ongoing state Signed-off-by: Simon Goldschmidt --- src/core/ipv4/acd.c | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/src/core/ipv4/acd.c b/src/core/ipv4/acd.c index bf721d58..bd75925e 100644 --- a/src/core/ipv4/acd.c +++ b/src/core/ipv4/acd.c @@ -257,9 +257,6 @@ acd_tmr(void) if (acd->sent_num == 0) { acd->state = ACD_STATE_ANNOUNCING; - /* let acd user know that the address is good and can be used */ - acd->acd_conflict_callback(netif, ACD_IP_OK); - /* reset conflict count to ensure fast re-probing after announcing */ acd->num_conflicts = 0; @@ -283,6 +280,9 @@ acd_tmr(void) ("acd_tmr(): changing state to ONGOING: %"U16_F".%"U16_F".%"U16_F".%"U16_F"\n", ip4_addr1_16(&acd->ipaddr), ip4_addr2_16(&acd->ipaddr), ip4_addr3_16(&acd->ipaddr), ip4_addr4_16(&acd->ipaddr))); + + /* finally, let acd user know that the address is good and can be used */ + acd->acd_conflict_callback(netif, ACD_IP_OK); } } break;