/** @file\r
Mtftp6 internal data structure and definition declaration.\r
\r
- Copyright (c) 2009 - 2012, Intel Corporation. All rights reserved. <BR>\r
+ Copyright (c) 2009 - 2018, Intel Corporation. All rights reserved. <BR>\r
\r
This program and the accompanying materials\r
are licensed and made available under the terms and conditions of the BSD License\r
#include <Library/UefiLib.h>\r
#include <Library/BaseLib.h>\r
#include <Library/NetLib.h>\r
+#include <Library/PrintLib.h>\r
\r
typedef struct _MTFTP6_SERVICE MTFTP6_SERVICE;\r
typedef struct _MTFTP6_INSTANCE MTFTP6_INSTANCE;\r
#define MTFTP6_GET_MAPPING_TIMEOUT 3\r
#define MTFTP6_DEFAULT_MAX_RETRY 5\r
#define MTFTP6_DEFAULT_BLK_SIZE 512\r
+#define MTFTP6_DEFAULT_WINDOWSIZE 1\r
#define MTFTP6_TICK_PER_SECOND 10000000U\r
\r
#define MTFTP6_SERVICE_FROM_THIS(a) CR (a, MTFTP6_SERVICE, ServiceBinding, MTFTP6_SERVICE_SIGNATURE)\r
UINT16 LastBlk;\r
LIST_ENTRY BlkList;\r
\r
+ UINT16 Operation;\r
+\r
+ UINT16 WindowSize;\r
+\r
+ //\r
+ // Record the total received and saved block number.\r
+ //\r
+ UINT64 TotalBlock;\r
+\r
+ //\r
+ // Record the acked block number.\r
+ //\r
+ UINT64 AckedBlock;\r
+\r
EFI_IPv6_ADDRESS ServerIp;\r
UINT16 ServerCmdPort;\r
UINT16 ServerDataPort;\r
// mtftp driver and udp driver.\r
//\r
UDP_IO *DummyUdpIo;\r
- BOOLEAN InDestroy;\r
};\r
\r
+typedef struct {\r
+ EFI_SERVICE_BINDING_PROTOCOL *ServiceBinding;\r
+ UINTN NumberOfChildren;\r
+ EFI_HANDLE *ChildHandleBuffer;\r
+} MTFTP6_DESTROY_CHILD_IN_HANDLE_BUF_CONTEXT;\r
+\r
/**\r
Returns the current operating mode data for the MTFTP6 instance.\r
\r