From: Wolfgang Denk Date: Sun, 8 Oct 2006 23:26:14 +0000 (+0200) Subject: Make bootp implementation RFC3046 compliant X-Git-Tag: U-Boot-1_1_5~19 X-Git-Url: https://git.librecmc.org/?a=commitdiff_plain;h=d82718fed0085b713d223b878c2378aeccc9a3e2;p=oweals%2Fu-boot.git Make bootp implementation RFC3046 compliant Patch by Joakim Larsson, 27 Jun 2006 --- diff --git a/CHANGELOG b/CHANGELOG index cc966ea975..b6ba66d09c 100644 --- a/CHANGELOG +++ b/CHANGELOG @@ -2,6 +2,9 @@ Changes since U-Boot 1.1.4: ====================================================================== +* Make bootp implementation RFC3046 compliant + Patch by Joakim Larsson, 27 Jun 2006 + * TQM5200: perform POST memory test only on STK52xx carrier board. (and then only if PSC6_3 is read as "1" when booting). Patch by Martin Krause, 21 Jun 2006 diff --git a/net/bootp.c b/net/bootp.c index 669d74a6a5..8f1382e945 100644 --- a/net/bootp.c +++ b/net/bootp.c @@ -851,7 +851,12 @@ static void DhcpSendRequestPkt(Bootp_t *bp_offer) NetCopyIP(&bp->bp_ciaddr, &bp_offer->bp_ciaddr); /* both in network byte order */ NetCopyIP(&bp->bp_yiaddr, &bp_offer->bp_yiaddr); NetCopyIP(&bp->bp_siaddr, &bp_offer->bp_siaddr); - NetCopyIP(&bp->bp_giaddr, &bp_offer->bp_giaddr); + /* + * RFC3046 requires Relay Agents to discard packets with + * nonzero and offered giaddr + */ + NetWriteIP(&bp->bp_giaddr, 0); + memcpy (bp->bp_chaddr, NetOurEther, 6); /*