[U-Boot] [PATCH] net: tftpsrv: Get correct client MAC address
Andrew Ruder
andrew.ruder at elecsyscorp.com
Wed Oct 23 02:10:28 CEST 2013
NetServerEther was not being cleared in the tftp server code, so the
destination MAC address would be whatever the last destination MAC
address was.
Scenario:
U-Boot:
dhcp
tftpsrv
Host:
Send device WRQ
Device:
Responds with ACK to dhcp server mac address with
host ip address
By clearing NetServerEther, we force a lookup of the host MAC address
to go with the associated host IP.
Signed-off-by: Andrew Ruder <andrew.ruder at elecsyscorp.com>
---
net/tftp.c | 3 +++
1 file changed, 3 insertions(+)
diff --git a/net/tftp.c b/net/tftp.c
index 6d333d5..002052a 100644
--- a/net/tftp.c
+++ b/net/tftp.c
@@ -849,6 +849,9 @@ TftpStartServer(void)
TftpState = STATE_RECV_WRQ;
net_set_udp_handler(TftpHandler);
+
+ /* zero out server ether in case the server ip has changed */
+ memset(NetServerEther, 0, 6);
}
#endif /* CONFIG_CMD_TFTPSRV */
--
1.8.4.rc3
More information about the U-Boot
mailing list