This is unlikely but possible if you have a manual subnet route
via another interface you normally receive a DHCP address inside
this subnet.
Saves spamming the log that we received for an inactive interface
as well.
xid = ntohl(bootp->xid);
TAILQ_FOREACH(ifn, ifp->ctx->ifaces, next) {
+ if (ifn == ifp)
+ continue;
state = D_CSTATE(ifn);
if (state == NULL || state->state == DHS_NONE)
continue;
}
state = D_CSTATE(ifp);
if (state == NULL) {
- logdebugx("%s: received BOOTP for inactive interface",
- ifp->name);
+ /* Try re-directing it to another interface. */
+ dhcp_redirect_dhcp(ifp, (struct bootp *)iov->iov_base,
+ iov->iov_len, &from->sin_addr);
return;
}