Get MaxPacketSize from IP4 mode data and reduce the head size of UDP and MTFTP, and take it as BlockSize to download.

git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@9894 6f19259b-4bc3-4df7-8a09-765794883524
This commit is contained in:
ljin6
2010-02-01 03:32:28 +00:00
parent 9f7d5b46aa
commit fa6d3ee491
4 changed files with 29 additions and 11 deletions

View File

@@ -47,8 +47,11 @@ typedef struct _PXEBC_PRIVATE_DATA PXEBC_PRIVATE_DATA;
#include "PxeBcSupport.h"
#define PXEBC_PRIVATE_DATA_SIGNATURE SIGNATURE_32 ('P', 'X', 'E', 'P')
#define PXEBC_MTFTP_TIMEOUT 4
#define PXEBC_MTFTP_RETRIES 6
#define PXEBC_MTFTP_TIMEOUT 4
#define PXEBC_MTFTP_RETRIES 6
#define PXEBC_DEFAULT_UDP_OVERHEAD_SIZE 8
#define PXEBC_DEFAULT_TFTP_OVERHEAD_SIZE 4
#define PXEBC_DEFAULT_PACKET_SIZE 1480
struct _PXEBC_PRIVATE_DATA {
UINT32 Signature;
@@ -88,7 +91,8 @@ struct _PXEBC_PRIVATE_DATA {
EFI_IP_ADDRESS GatewayIp;
EFI_IP_ADDRESS ServerIp;
BOOLEAN AddressIsOk;
UINT32 Ip4MaxPacketSize;
UINTN BlockSize;
UINTN FileSize;
UINT8 OptionBuffer[PXEBC_DHCP4_MAX_OPTION_SIZE];