Mercurial > hg > dhcpcd
changeset 2272:70151201c430 draft
Fix auto-configure
| author | Roy Marples <roy@marples.name> |
|---|---|
| date | Sat, 01 Feb 2014 10:40:40 +0000 |
| parents | 3f402daf273e |
| children | 5d5903ebb49f |
| files | dhcp.c |
| diffstat | 1 files changed, 6 insertions(+), 2 deletions(-) [+] |
line wrap: on
line diff
--- a/dhcp.c Fri Jan 31 22:28:16 2014 +0000 +++ b/dhcp.c Sat Feb 01 10:40:40 2014 +0000 @@ -2275,7 +2275,7 @@ free(msg); } if (state->state == DHS_DISCOVER && - get_option_uint8(&tmp, dhcp, DHO_AUTOCONFIGURE) != 0) + get_option_uint8(&tmp, dhcp, DHO_AUTOCONFIGURE) == 0) { switch (tmp) { case 0: @@ -2290,7 +2290,11 @@ log_dhcp(LOG_WARNING, "IPv4LL enabled from", iface, dhcp, from); eloop_timeout_delete(NULL, iface); - ipv4ll_start(iface); + if (IN_LINKLOCAL(htonl(state->addr.s_addr))) + eloop_timeout_add_sec(DHCP_MAX, + dhcp_discover, iface); + else + ipv4ll_start(iface); break; default: syslog(LOG_ERR,
