it's not dropped during the NAK handling.
struct stat st;
struct timeval now;
uint32_t l;
+ int nolease;
handle_carrier(iface->name);
if (iface->carrier == LINK_DOWN) {
return;
}
+ /* We don't want to read the old lease if we NAK an old test */
+ nolease = iface->state->offer && options & DHCPCD_TEST;
+
iface->start_uptime = uptime();
free(iface->state->offer);
iface->state->offer = NULL;
start_inform(iface);
return;
}
- } else
+ } else if (!nolease)
iface->state->offer = read_lease(iface);
if (iface->state->offer) {
get_lease(&iface->state->lease, iface->state->offer);