Skip to content
Snippets Groups Projects
Commit f754f5dc authored by rockly's avatar rockly Committed by Joe Hershberger
Browse files

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: default avatarRockly <rocklygnome@gmail.com>
Patch: 264417
parent c2e5e802
No related branches found
No related tags found
No related merge requests found
...@@ -281,7 +281,7 @@ static void update_block_number(void) ...@@ -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 */
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment