uboot/net
Gerhard Sittig f395e75e27 net: dns: fix for DNS queries sent to the wrong MAC address
When a DNS query is sent out, the ethernet packet can get directed to
the MAC address of a server that was communicated to before.  This is
wrong when the previously stored MAC address corresponds to a different
server's IP address, i.e. when the IP address of the previous and the
current communication are different.

The error can get reproduced by running a sequence of e.g. a TFTP
download and a DNS query, where the TFTP and DNS servers reside on
individual machines.

The fix is to clear the server's MAC address that might be left from a
previous operation, and to fetch the peer's MAC address in a new ARP
lookup, before the DNS query is sent.  This is the approach taken in
other network services, like 8e52533d10 ("net: tftpsrv: Get correct
client MAC address").

Reported-by: Dirk Zimoch <dirk.zimoch@psi.ch>
Signed-off-by: Gerhard Sittig <gsi@denx.de>
2014-09-16 12:24:00 -04:00
..
Makefile kbuild: use Linux Kernel build scripts 2014-02-19 11:07:50 -05:00
arp.c
arp.h
bootp.c net: More BOOTP retry timeout improvements 2014-08-21 12:01:30 -04:00
bootp.h net: BOOTP retry timeout improvements 2014-08-09 11:17:03 -04:00
cdp.c
cdp.h
dns.c net: dns: fix for DNS queries sent to the wrong MAC address 2014-09-16 12:24:00 -04:00
dns.h
eth.c Ethernet: let user know if there is no valid ethernet address 2014-07-22 07:44:28 -04:00
link_local.c
link_local.h
net.c net: BOOTP retry timeout improvements 2014-08-09 11:17:03 -04:00
net_rand.h
nfs.c
nfs.h
ping.c
ping.h
rarp.c
rarp.h
sntp.c
sntp.h
tftp.c
tftp.h