/** @file\r
The implementation of EFI IPv6 Configuration Protocol.\r
\r
- Copyright (c) 2009 - 2017, 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
- which accompanies this distribution. The full text of the license may be found at\r
- http://opensource.org/licenses/bsd-license.php.\r
-\r
- THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,\r
- WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.\r
+ SPDX-License-Identifier: BSD-2-Clause-Patent\r
\r
**/\r
\r
BOOLEAN Recovery;\r
\r
Recovery = FALSE;\r
- \r
+\r
//\r
// Currently there are only two policies: Manual and Automatic. Regardless of\r
// what transition is going on, i.e., Manual -> Automatic and Automatic ->\r
}\r
\r
if (!IsListEmpty (&IpSb->DefaultInterface->AddressList) && IpSb->DefaultInterface->AddressCount > 0) {\r
- // \r
- // If any IPv6 children (Instance) in configured state and use global unicast address, it will be \r
- // destroyed in Ip6RemoveAddr() function later. Then, the upper layer driver's Stop() function will be \r
- // called, which may break the upper layer network stacks. So, the driver should take the responsibility \r
- // for the recovery by using ConnectController() after Ip6RemoveAddr(). \r
+ //\r
+ // If any IPv6 children (Instance) in configured state and use global unicast address, it will be\r
+ // destroyed in Ip6RemoveAddr() function later. Then, the upper layer driver's Stop() function will be\r
+ // called, which may break the upper layer network stacks. So, the driver should take the responsibility\r
+ // for the recovery by using ConnectController() after Ip6RemoveAddr().\r
// Here, just check whether need to recover the upper layer network stacks later.\r
//\r
- NET_LIST_FOR_EACH (Entry, &IpSb->DefaultInterface->AddressList) { \r
+ NET_LIST_FOR_EACH (Entry, &IpSb->DefaultInterface->AddressList) {\r
AddrInfo = NET_LIST_USER_STRUCT_S (Entry, IP6_ADDRESS_INFO, Link, IP6_ADDR_INFO_SIGNATURE);\r
if (!IsListEmpty (&IpSb->Children)) {\r
NET_LIST_FOR_EACH (Entry2, &IpSb->Children) {\r
}\r
}\r
}\r
- \r
+\r
//\r
// All IPv6 children that use global unicast address as it's source address\r
// should be destroyed now. The survivers are those use the link-local address\r
NULL,\r
0\r
);\r
- \r
+\r
if (IpSb->Controller != NULL && Recovery) {\r
//\r
// ConnectController() to recover the upper layer network stacks.\r
DataItem->DataSize = 0;\r
DataItem->Status = EFI_NOT_FOUND;\r
NetMapIterate (&DataItem->EventMap, Ip6ConfigSignalEvent, NULL);\r
- \r
+\r
if (NewPolicy == Ip6ConfigPolicyManual) {\r
//\r
// The policy is changed from automatic to manual. Stop the DHCPv6 process\r
}\r
} else {\r
//\r
- // DataSize is 0 and Data is NULL, clean up the DnsServer address. \r
+ // DataSize is 0 and Data is NULL, clean up the DnsServer address.\r
//\r
if (Item->Data.Ptr != NULL) {\r
FreePool (Item->Data.Ptr);\r
network stack was set successfully.\r
@retval EFI_INVALID_PARAMETER One or more of the following are TRUE:\r
- This is NULL.\r
- - One or more fields in Data and DataSizedo not match the \r
+ - One or more fields in Data and DataSizedo not match the\r
requirement of the data type indicated by DataType.\r
@retval EFI_WRITE_PROTECTED The specified configuration data is read-only or the specified\r
configuration data cannot be set under the current policy.\r