Hi,

In start_pxebs() (net/udp/dhcp.c), before doing xfer_open_socket(), 
fetch_ipv4_setting() makes sure that IP address (assigned during DHCP process) 
is set to dchp->local.sin_addr. This means, after DGRAM socket is opened, 
dhcp_pxebs_rx() cannot receive any broadcasted DHCP ACK packets. udp_demux will 
allow only packets unicasted to interface's IP address, to this open UDP 
connection. This breaks pxebs.


Would it be an sensible idea to move, fetch_ipv4_setting() after 
xfer_open_socket(), such that DGRAM socket is opened with dchp->local.sin_addr 
set to zero (just like start_dhcp()) or is there a different way to solve this 
problem.


Thanks,

Anoob.
_______________________________________________
ipxe-devel mailing list
ipxe-devel@lists.ipxe.org
https://lists.ipxe.org/mailman/listinfo.cgi/ipxe-devel

Reply via email to