]> git.proxmox.com Git - mirror_edk2.git/blobdiff - NetworkPkg/UefiPxeBcDxe/PxeBcDhcp6.h
NetworkPkg: Clean up source files
[mirror_edk2.git] / NetworkPkg / UefiPxeBcDxe / PxeBcDhcp6.h
index a6d52f972c5b16105ef9995caebf12a2a4aec9cd..f3dcd89743b0dc95080ff9d8be4c5d5506c6754e 100644 (file)
@@ -1,7 +1,7 @@
 /** @file\r
   Functions declaration related with DHCPv6 for UefiPxeBc Driver.\r
 \r
-  Copyright (c) 2009 - 2016, 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
@@ -18,7 +18,7 @@
 \r
 #define PXEBC_DHCP6_OPTION_MAX_NUM        16\r
 #define PXEBC_DHCP6_OPTION_MAX_SIZE       312\r
-#define PXEBC_DHCP6_PACKET_MAX_SIZE       1472\r
+#define PXEBC_DHCP6_PACKET_MAX_SIZE       (sizeof (EFI_PXE_BASE_CODE_PACKET))\r
 #define PXEBC_IP6_POLICY_MAX              0xff\r
 #define PXEBC_IP6_ROUTE_TABLE_TIMEOUT     10\r
 \r
@@ -33,7 +33,8 @@
 #define PXEBC_DHCP6_IDX_BOOT_FILE_URL     1\r
 #define PXEBC_DHCP6_IDX_BOOT_FILE_PARAM   2\r
 #define PXEBC_DHCP6_IDX_VENDOR_CLASS      3\r
-#define PXEBC_DHCP6_IDX_MAX               4\r
+#define PXEBC_DHCP6_IDX_DNS_SERVER        4\r
+#define PXEBC_DHCP6_IDX_MAX               5\r
 \r
 #define PXEBC_DHCP6_BOOT_FILE_URL_PREFIX  "tftp://"\r
 #define PXEBC_TFTP_URL_SEPARATOR          '/'\r
@@ -100,10 +101,12 @@ typedef struct {
   UINT8                   Precedence;\r
 } PXEBC_DHCP6_OPTION_NODE;\r
 \r
+#define PXEBC_CACHED_DHCP6_PACKET_MAX_SIZE  (OFFSET_OF (EFI_DHCP6_PACKET, Dhcp6) + PXEBC_DHCP6_PACKET_MAX_SIZE)\r
+\r
 typedef union {\r
   EFI_DHCP6_PACKET        Offer;\r
   EFI_DHCP6_PACKET        Ack;\r
-  UINT8                   Buffer[PXEBC_DHCP6_PACKET_MAX_SIZE];\r
+  UINT8                   Buffer[PXEBC_CACHED_DHCP6_PACKET_MAX_SIZE];\r
 } PXEBC_DHCP6_PACKET;\r
 \r
 typedef struct {\r
@@ -128,6 +131,7 @@ PxeBcFreeBootFileOption (
 /**\r
   Parse the Boot File URL option.\r
 \r
+  @param[in]      Private             Pointer to PxeBc private data.\r
   @param[out]     FileName     The pointer to the boot file name.\r
   @param[in, out] SrvAddr      The pointer to the boot server address.\r
   @param[in]      BootFile     The pointer to the boot file URL option data.\r
@@ -140,6 +144,7 @@ PxeBcFreeBootFileOption (
 **/\r
 EFI_STATUS\r
 PxeBcExtractBootFileUrl (\r
+  IN PXEBC_PRIVATE_DATA      *Private,\r
      OUT UINT8               **FileName,\r
   IN OUT EFI_IPv6_ADDRESS    *SrvAddr,\r
   IN     CHAR8               *BootFile,\r
@@ -248,7 +253,7 @@ PxeBcSetIp6Policy (
 \r
 /**\r
   This function will register the station IP address and flush IP instance to start using the new IP address.\r
-  \r
+\r
   @param[in]  Private             The pointer to PXEBC_PRIVATE_DATA.\r
 \r
   @retval     EFI_SUCCESS         The new IP address has been configured successfully.\r