summaryrefslogtreecommitdiff
path: root/net/bootp.c
diff options
context:
space:
mode:
authorWolfgang Denk <wd@atlas.denx.de>2006-10-09 01:26:14 +0200
committerWolfgang Denk <wd@atlas.denx.de>2006-10-09 01:26:14 +0200
commitd82718fed0085b713d223b878c2378aeccc9a3e2 (patch)
treedd52d2dc0ae34e23db8ccb170670614b8223ee13 /net/bootp.c
parent1d92b2e550f5c069befe349a294238cee57959a9 (diff)
downloadu-boot-imx-d82718fed0085b713d223b878c2378aeccc9a3e2.zip
u-boot-imx-d82718fed0085b713d223b878c2378aeccc9a3e2.tar.gz
u-boot-imx-d82718fed0085b713d223b878c2378aeccc9a3e2.tar.bz2
Make bootp implementation RFC3046 compliant
Patch by Joakim Larsson, 27 Jun 2006
Diffstat (limited to 'net/bootp.c')
-rw-r--r--net/bootp.c7
1 files changed, 6 insertions, 1 deletions
diff --git a/net/bootp.c b/net/bootp.c
index 669d74a..8f1382e 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);
/*