From: Roy Marples Date: Fri, 24 Oct 2014 20:30:38 +0000 (+0000) Subject: When we transition from REQUEST to DISCOVER in a reboot, start X-Git-Tag: v6.6.0~3 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=a1067f7371fb428bf1c661c1735d1c4a7388a35f;p=thirdparty%2Fdhcpcd.git When we transition from REQUEST to DISCOVER in a reboot, start IPv4LL at the same time as discover to ensure we have an address quicker. --- diff --git a/dhcp.c b/dhcp.c index aa1d0685..b7de69d1 100644 --- a/dhcp.c +++ b/dhcp.c @@ -2131,6 +2131,13 @@ dhcp_reboot(struct interface *ifp) state->xid = dhcp_xid(ifp); state->lease.server.s_addr = 0; eloop_timeout_delete(ifp->ctx->eloop, NULL, ifp); + + /* Need to add this before dhcp_expire and friends. */ + if (!ifo->fallback && ifo->reboot && ifo->options & DHCPCD_IPV4LL && + !IN_LINKLOCAL(htonl(state->addr.s_addr))) + eloop_timeout_add_sec(ifp->ctx->eloop, + ifo->reboot, ipv4ll_start, ifp); + if (ifo->fallback) eloop_timeout_add_sec(ifp->ctx->eloop, ifo->reboot, dhcp_fallback, ifp);