david/ipxe
david
/
ipxe
Archived
1
0
Fork 0

[ipv4] Accept unicast packets for the local network broadcast address

The ISC Kea DHCP server transmits its DHCPOFFER as a unicast packet
with a broadcast IPv4 destination address (255.255.255.255).  This
combination is currently rejected by iPXE.

Fix by explicitly accepting the local network broadcast address
(255.255.255.255) as a valid unicast destination address.

Reported-by: Roy Ledochowski <roy.ledochowski@hpe.com>
Tested-by: Roy Ledochowski <roy.ledochowski@hpe.com>
Signed-off-by: Michael Brown <mcb30@ipxe.org>
This commit is contained in:
Michael Brown 2017-01-22 09:12:52 +00:00
parent 26050fd4c8
commit 43b2d8eafb
1 changed files with 1 additions and 0 deletions

View File

@ -552,6 +552,7 @@ static int ipv4_rx ( struct io_buffer *iobuf,
/* Discard unicast packets not destined for us */
if ( ( ! ( flags & LL_MULTICAST ) ) &&
( iphdr->dest.s_addr != INADDR_BROADCAST ) &&
ipv4_has_any_addr ( netdev ) &&
( ! ipv4_has_addr ( netdev, iphdr->dest ) ) ) {
DBGC ( iphdr->src, "IPv4 discarding non-local unicast packet "