summaryrefslogtreecommitdiff
path: root/NetworkPkg/UefiPxeBcDxe/PxeBcDhcp6.h
diff options
context:
space:
mode:
authorFu, Siyuan <siyuan.fu@intel.com>2014-09-18 11:44:36 +0000
committersfu5 <sfu5@6f19259b-4bc3-4df7-8a09-765794883524>2014-09-18 11:44:36 +0000
commitae97201c55603b69289c5d2349238ea97b2cd35e (patch)
treea30a58e3430a7dbb364ae483b9c92cc12a61439c /NetworkPkg/UefiPxeBcDxe/PxeBcDhcp6.h
parent44833d441beec53e8eaf5acb7d26c018f704247b (diff)
downloadedk2-platforms-ae97201c55603b69289c5d2349238ea97b2cd35e.tar.xz
1. Update PXE driver to support PXEv6 boot cross subnet.
2. Update IP6 driver to use previous configured prefix length if a pre-exist IP6 address with unspecified prefix length. 3. Add NULL check for Dhcp protocol pointer before it decline the address in Ip6ConfigSetStatefulAddrCallback() function. Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Fu, Siyuan <siyuan.fu@intel.com> Reviewed-By: Ye, Ting (ting.ye@intel.com) Reviewed-By: Wu, Jiaxin <jiaxin.wu@intel.com> git-svn-id: https://svn.code.sf.net/p/edk2/code/trunk/edk2@16131 6f19259b-4bc3-4df7-8a09-765794883524
Diffstat (limited to 'NetworkPkg/UefiPxeBcDxe/PxeBcDhcp6.h')
-rw-r--r--NetworkPkg/UefiPxeBcDxe/PxeBcDhcp6.h30
1 files changed, 29 insertions, 1 deletions
diff --git a/NetworkPkg/UefiPxeBcDxe/PxeBcDhcp6.h b/NetworkPkg/UefiPxeBcDxe/PxeBcDhcp6.h
index bb8ad65b63..38bf26564d 100644
--- a/NetworkPkg/UefiPxeBcDxe/PxeBcDhcp6.h
+++ b/NetworkPkg/UefiPxeBcDxe/PxeBcDhcp6.h
@@ -1,7 +1,7 @@
/** @file
Functions declaration related with DHCPv6 for UefiPxeBc Driver.
- Copyright (c) 2009 - 2012, Intel Corporation. All rights reserved.<BR>
+ Copyright (c) 2009 - 2014, 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
@@ -20,6 +20,7 @@
#define PXEBC_DHCP6_OPTION_MAX_SIZE 312
#define PXEBC_DHCP6_PACKET_MAX_SIZE 1472
#define PXEBC_IP6_POLICY_MAX 0xff
+#define PXEBC_IP6_ROUTE_TABLE_TIMEOUT 10
#define PXEBC_DHCP6_S_PORT 547
#define PXEBC_DHCP6_C_PORT 546
@@ -254,6 +255,33 @@ PxeBcDhcp6Discover (
IN EFI_IP_ADDRESS *DestIp
);
+/**
+ Set the IP6 policy to Automatic.
+
+ @param[in] Private The pointer to PXEBC_PRIVATE_DATA.
+
+ @retval EFI_SUCCESS Switch the IP policy succesfully.
+ @retval Others Unexpect error happened.
+
+**/
+EFI_STATUS
+PxeBcSetIp6Policy (
+ IN PXEBC_PRIVATE_DATA *Private
+ );
+
+/**
+ This function will register the station IP address and flush IP instance to start using the new IP address.
+
+ @param[in] Private The pointer to PXEBC_PRIVATE_DATA.
+
+ @retval EFI_SUCCESS The new IP address has been configured successfully.
+ @retval Others Failed to configure the address.
+
+**/
+EFI_STATUS
+PxeBcSetIp6Address (
+ IN PXEBC_PRIVATE_DATA *Private
+ );
/**
Start the DHCPv6 S.A.R.R. process to acquire the IPv6 address and other PXE boot information.