if (ia->flags & IPV4_AF_NEW) {
TAILQ_INSERT_TAIL(&state->addrs, ia, next);
-#ifdef ARP
+#if defined(ARP) && !defined(KERNEL_RFC5227)
arp_ifannounceaddr(ifp, &ia->addr);
#endif
}
struct ipv4ll_state *state = IPV4LL_STATE(astate->iface);
state->conflicts = 0;
-#ifdef KERNEL_RFC5227
- arp_free(astate);
-#endif
}
/* This is the callback by ARP freeing */
rt_build(ifp->ctx, AF_INET);
#ifndef KERNEL_RFC5227
- astate = arp_ifannounceaddr(ifp, &ia->addr);
- if (astate != NULL)
- astate->announced_cb = ipv4ll_announced_arp;
+ state->arp->announced_cb = ipv4ll_announced_arp;
#endif
script_runreason(ifp, "IPV4LL");
dhcpcd_daemonise(ifp->ctx);