mirror of
https://source.denx.de/u-boot/u-boot.git
synced 2025-11-29 06:31:28 +01:00
net: tftp: Make sure timeout will not effect wrap offset
When the block 0 store to the memory of client and timeout at this moment. Because of no ACK packet, the server will send block 0 again, if this client reconnect to the server at this time, TftpBlockWrapOffset will become larger than it should be. Signed-off-by: Rockly <rocklygnome@gmail.com> Patch: 264417
This commit is contained in:
parent
c2e5e802ec
commit
f754f5dc6f
@ -281,7 +281,7 @@ static void update_block_number(void)
|
|||||||
* number of 0 this means that there was a wrap
|
* number of 0 this means that there was a wrap
|
||||||
* around of the (16 bit) counter.
|
* around of the (16 bit) counter.
|
||||||
*/
|
*/
|
||||||
if (TftpBlock == 0) {
|
if (TftpBlock == 0 && TftpLastBlock != 0) {
|
||||||
TftpBlockWrap++;
|
TftpBlockWrap++;
|
||||||
TftpBlockWrapOffset += TftpBlkSize * TFTP_SEQUENCE_SIZE;
|
TftpBlockWrapOffset += TftpBlkSize * TFTP_SEQUENCE_SIZE;
|
||||||
TftpTimeoutCount = 0; /* we've done well, reset thhe timeout */
|
TftpTimeoutCount = 0; /* we've done well, reset thhe timeout */
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user