summaryrefslogtreecommitdiff
path: root/MdeModulePkg/Universal/Network/Mtftp4Dxe/Mtftp4Wrq.c
diff options
context:
space:
mode:
authorhhuan13 <hhuan13@6f19259b-4bc3-4df7-8a09-765794883524>2010-06-29 01:26:28 +0000
committerhhuan13 <hhuan13@6f19259b-4bc3-4df7-8a09-765794883524>2010-06-29 01:26:28 +0000
commitf1f11ea29a22674d83a66746e5b87c0caea8c9ce (patch)
tree42f191bdd6b2d1ae92d0f9cf92ab823f57e927cf /MdeModulePkg/Universal/Network/Mtftp4Dxe/Mtftp4Wrq.c
parent97c0d02fd653fe210b6a19771d3442abfae87066 (diff)
downloadedk2-f1f11ea29a22674d83a66746e5b87c0caea8c9ce.zip
edk2-f1f11ea29a22674d83a66746e5b87c0caea8c9ce.tar.gz
edk2-f1f11ea29a22674d83a66746e5b87c0caea8c9ce.tar.bz2
Fixed a bug in Mtftp4: to allow the block number to roll over to accept transfers of unlimited size.
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@10609 6f19259b-4bc3-4df7-8a09-765794883524
Diffstat (limited to 'MdeModulePkg/Universal/Network/Mtftp4Dxe/Mtftp4Wrq.c')
-rw-r--r--MdeModulePkg/Universal/Network/Mtftp4Dxe/Mtftp4Wrq.c7
1 files changed, 4 insertions, 3 deletions
diff --git a/MdeModulePkg/Universal/Network/Mtftp4Dxe/Mtftp4Wrq.c b/MdeModulePkg/Universal/Network/Mtftp4Dxe/Mtftp4Wrq.c
index adc6489..4312e18 100644
--- a/MdeModulePkg/Universal/Network/Mtftp4Dxe/Mtftp4Wrq.c
+++ b/MdeModulePkg/Universal/Network/Mtftp4Dxe/Mtftp4Wrq.c
@@ -1,7 +1,7 @@
/** @file
Routines to process Wrq (upload).
-Copyright (c) 2006 - 2009, Intel Corporation. All rights reserved.<BR>
+Copyright (c) 2006 - 2010, Intel Corporation. All rights reserved.<BR>
This program and the accompanying materials
are licensed and made available under the terms and conditions of the BSD License
which accompanies this distribution. The full text of the license may be found at
@@ -145,7 +145,8 @@ Mtftp4WrqHandleAck (
{
UINT16 AckNum;
INTN Expected;
-
+ UINT64 TotalBlock;
+
*Completed = FALSE;
AckNum = NTOHS (Packet->Ack.Block[0]);
Expected = Mtftp4GetNextBlockNum (&Instance->Blocks);
@@ -165,7 +166,7 @@ Mtftp4WrqHandleAck (
// tell the Mtftp4WrqInput to finish the transfer. This is the last
// block number if the block range are empty..
//
- Mtftp4RemoveBlockNum (&Instance->Blocks, AckNum);
+ Mtftp4RemoveBlockNum (&Instance->Blocks, AckNum, &TotalBlock);
Expected = Mtftp4GetNextBlockNum (&Instance->Blocks);