summaryrefslogtreecommitdiff
path: root/net
diff options
context:
space:
mode:
authorTom Rini <trini@ti.com>2013-11-25 10:42:19 -0500
committerTom Rini <trini@ti.com>2013-11-25 10:42:19 -0500
commit1a1326d2da9b2904bc90fb2990f829cb1ecef312 (patch)
tree79b47ce3f6bbc48974d305eedebd0e473dc9a33d /net
parentfaca8ff55f4a2cf45fb906cc37f44601149fc00e (diff)
parent2287286be4e268d3d4ec3c0347bf31479dbd1f05 (diff)
Merge branch 'master' of git://git.denx.de/u-boot-net
Diffstat (limited to 'net')
-rw-r--r--net/tftp.c5
1 files changed, 4 insertions, 1 deletions
diff --git a/net/tftp.c b/net/tftp.c
index 6d333d559c1..966d1cfba36 100644
--- a/net/tftp.c
+++ b/net/tftp.c
@@ -281,7 +281,7 @@ static void update_block_number(void)
* number of 0 this means that there was a wrap
* around of the (16 bit) counter.
*/
- if (TftpBlock == 0) {
+ if (TftpBlock == 0 && TftpLastBlock != 0) {
TftpBlockWrap++;
TftpBlockWrapOffset += TftpBlkSize * TFTP_SEQUENCE_SIZE;
TftpTimeoutCount = 0; /* we've done well, reset thhe timeout */
@@ -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 */