--- a/usr/kinit/ipconfig/dhcp_proto.c
+++ b/usr/kinit/ipconfig/dhcp_proto.c
@@ -201,8 +201,14 @@ static int dhcp_send(struct netdev *dev,
        bootp.hlen      = dev->hwlen;
        bootp.xid       = dev->bootp.xid;
        bootp.ciaddr    = INADDR_ANY;
-       bootp.yiaddr    = dev->ip_addr;
+       /* yiaddr should always be set to 0 for the messages we're likely
+        * to send as a DHCP client: DHCPDISCOVER, DHCPREQUEST, DHCPDECLINE,
+        * DHCPINFORM, DHCPRELEASE
+        * cf. RFC2131 section 4.1.1, table 5.
+        */
+       bootp.yiaddr    = INADDR_ANY;
        bootp.giaddr    = INADDR_ANY;
+       bootp.flags     = htons(0x800);
        bootp.secs      = htons(time(NULL) - dev->open_time);
        memcpy(bootp.chaddr, dev->hwaddr, 16);


Hallelujah;
you got it done; Thank you!

-- 
You received this bug notification because you are a member of Ubuntu
Bugs, which is subscribed to Ubuntu.
https://bugs.launchpad.net/bugs/1327412

Title:
  Delay during PXE Boot, IP-Config gives up

To manage notifications about this bug go to:
https://bugs.launchpad.net/ubuntu/+source/klibc/+bug/1327412/+subscriptions

-- 
ubuntu-bugs mailing list
ubuntu-bugs@lists.ubuntu.com
https://lists.ubuntu.com/mailman/listinfo/ubuntu-bugs

Reply via email to