Tobias Krawutschke found a bug where the DHCP client would accept packets

with the wrong ARP address, meaning we could easily get somebody else's IP.
That is a bad thing, and this is the minimal two-line fix.
This commit is contained in:
Rob Landley 2005-05-26 05:25:12 +00:00
parent 8b2d02ed34
commit 0b1ff5a606

View File

@ -439,6 +439,9 @@ int main(int argc, char *argv[])
(unsigned long) packet.xid, xid); (unsigned long) packet.xid, xid);
continue; continue;
} }
/* Ignore packets that aren't for us */
if (memcmp(client_config.arp,packet.chaddr,6))
continue;
if ((message = get_option(&packet, DHCP_MESSAGE_TYPE)) == NULL) { if ((message = get_option(&packet, DHCP_MESSAGE_TYPE)) == NULL) {
DEBUG(LOG_ERR, "couldnt get option from packet -- ignoring"); DEBUG(LOG_ERR, "couldnt get option from packet -- ignoring");