]> git.proxmox.com Git - mirror_edk2.git/blobdiff - MdeModulePkg/Universal/Network/UefiPxeBcDxe/PxeBcImpl.h
MdeModulePkg/Ip4Dxe: Add Ip/Netmask pair check for Ip4Config2
[mirror_edk2.git] / MdeModulePkg / Universal / Network / UefiPxeBcDxe / PxeBcImpl.h
index ddc1eba034e333c11487ae6c55d04bfac938c63a..834c0d0089fa0c80a5e4a2cb58debec7edc9fa03 100644 (file)
@@ -1,6 +1,6 @@
 /** @file\r
 \r
-Copyright (c) 2007 - 2010, Intel Corporation. All rights reserved.<BR>\r
+Copyright (c) 2007 - 2016, Intel Corporation. All rights reserved.<BR>\r
 This program and the accompanying materials\r
 are licensed and made available under the terms and conditions of the BSD License\r
 which accompanies this distribution.  The full text of the license may be found at\r
@@ -21,6 +21,7 @@ typedef struct _PXEBC_PRIVATE_DATA  PXEBC_PRIVATE_DATA;
 \r
 #include <Guid/SmBios.h>\r
 #include <IndustryStandard/SmBios.h>\r
+#include <IndustryStandard/Dhcp.h>\r
 #include <Protocol/Dhcp4.h>\r
 #include <Protocol/PxeBaseCode.h>\r
 #include <Protocol/Mtftp4.h>\r
@@ -30,8 +31,10 @@ typedef struct _PXEBC_PRIVATE_DATA  PXEBC_PRIVATE_DATA;
 #include <Protocol/PxeBaseCodeCallBack.h>\r
 #include <Protocol/Arp.h>\r
 #include <Protocol/Ip4.h>\r
+#include <Protocol/Ip4Config2.h>\r
 \r
 #include <Library/DebugLib.h>\r
+#include <Library/DevicePathLib.h>\r
 #include <Library/BaseMemoryLib.h>\r
 #include <Library/MemoryAllocationLib.h>\r
 #include <Library/UefiDriverEntryPoint.h>\r
@@ -50,10 +53,10 @@ typedef struct _PXEBC_PRIVATE_DATA  PXEBC_PRIVATE_DATA;
 #define PXEBC_PRIVATE_DATA_SIGNATURE  SIGNATURE_32 ('P', 'X', 'E', 'P')\r
 #define PXEBC_MTFTP_TIMEOUT                4\r
 #define PXEBC_MTFTP_RETRIES                6\r
-#define PXEBC_DEFAULT_UDP_OVERHEAD_SIZE    8
+#define PXEBC_DEFAULT_UDP_OVERHEAD_SIZE    8\r
 #define PXEBC_DEFAULT_TFTP_OVERHEAD_SIZE   4\r
 #define PXEBC_DEFAULT_PACKET_SIZE          1480\r
-#define PXEBC_DEFAULT_LIFETIME             2000000  // 2 seconds, unit is microsecond\r
+#define PXEBC_DEFAULT_LIFETIME             50000  // 50ms, unit is microsecond\r
 \r
 struct _PXEBC_PRIVATE_DATA {\r
   UINT32                                    Signature;\r
@@ -75,6 +78,7 @@ struct _PXEBC_PRIVATE_DATA {
   EFI_ARP_PROTOCOL                          *Arp;\r
   EFI_DHCP4_PROTOCOL                        *Dhcp4;\r
   EFI_IP4_PROTOCOL                          *Ip4;\r
+  EFI_IP4_CONFIG2_PROTOCOL                  *Ip4Config2;\r
   EFI_IP4_CONFIG_DATA                       Ip4ConfigData;\r
   EFI_MTFTP4_PROTOCOL                       *Mtftp4;\r
   EFI_UDP4_PROTOCOL                         *Udp4Read;\r