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