[U-Boot-Users] [PATCH] DHCP Client Fix

Wolfgang Denk wd at denx.de
Sun Oct 28 23:01:17 CET 2007


Dear Justin,

in message <4155D0DA4B6B044891B3F19311C7E7B89C45E4 at EXCHANGE1.886llc.local> you wrote:
> 
> I recently upgraded the firmware on some of my old Linksys WRT54G
> routers (version 5) from firmware version 1.0.6 to firmware version
> 1.02.2, both of which are released by Linksys and U-Boot was no longer
> able to get an IP address using DHCP.  However, with the older firmware
> (version 1.0.6), U-Boot was still able to get an IP through DHCP.
> 
> Using a hub and a packet sniffer, I was able to locate the problem.  The
> U-Boot code will bind to an IP address offered by the DHCP server
> prematurely and the DHCP server will not respond with an ACK, rendering

I have to admit that I'm not sure if this is a bug in  U-Boot  or  in
the  Linksys  router  (which I have under special observation as they
explicitely and intentionally violate the U-Boot GPL).

> the system without an IP address.  This is no longer valid when using a
> Linksys router as DHCP server.  I modified the code to operate the way
> the Linux DHCP client does by not binding to the offered IP until the
> DHCP client receives the ACK sent by the server, ending the
> conversation.  After making the appropriate changes, DCHP service was
> restored for all flavors of the Linksys firmware that I have available
> (v 1.02.2 and v1.0.6 for the version 5 router, v8.00.2 for the version 8
> router).  It has also been tested on an AirPort Extreme router running
> DHCP.
> 
> Attached is the patch with the code changes that were made. Any feed
> back would be appreciated.

I'm waiting for feedback (or a pull request?) from the network
custodian.

Ben???


Best regards,

Wolfgang Denk

-- 
DENX Software Engineering GmbH,     MD: Wolfgang Denk & Detlev Zundel
HRB 165235 Munich, Office: Kirchenstr.5, D-82194 Groebenzell, Germany
Phone: (+49)-8142-66989-10 Fax: (+49)-8142-66989-80 Email: wd at denx.de
365 Days of drinking Lo-Cal beer.                       = 1 Lite-year




More information about the U-Boot mailing list