X-Git-Url: https://git.proxmox.com/?a=blobdiff_plain;f=NetworkPkg%2FIp6Dxe%2FIp6ConfigImpl.h;h=3a6e8ad4d17c28e7b70180c5a0e42dba44077275;hb=9dca2105ad960c9946d7cc2ece40f65e1999dac7;hp=5ae483931a97940ea5bcccafbd5d3cba000946e8;hpb=a3bcde70e6dc69000f85cc5deee98101d2ae200a;p=mirror_edk2.git diff --git a/NetworkPkg/Ip6Dxe/Ip6ConfigImpl.h b/NetworkPkg/Ip6Dxe/Ip6ConfigImpl.h index 5ae483931a..3a6e8ad4d1 100644 --- a/NetworkPkg/Ip6Dxe/Ip6ConfigImpl.h +++ b/NetworkPkg/Ip6Dxe/Ip6ConfigImpl.h @@ -1,7 +1,7 @@ /** @file Definitions for EFI IPv6 Configuartion Protocol implementation. - Copyright (c) 2009 - 2010, Intel Corporation. All rights reserved.
+ Copyright (c) 2009 - 2016, Intel Corporation. All rights reserved.
This program and the accompanying materials are licensed and made available under the terms and conditions of the BSD License @@ -21,8 +21,6 @@ #define IP6_CONFIG_VARIABLE_ATTRIBUTE (EFI_VARIABLE_NON_VOLATILE | EFI_VARIABLE_BOOTSERVICE_ACCESS) #define IP6_CONFIG_DEFAULT_DAD_XMITS 1 -#define IP6_CONFIG_DHCP6_OPTION_ORO 6 -#define IP6_CONFIG_DHCP6_OPTION_DNS_SERVERS 23 #define DATA_ATTRIB_SIZE_FIXED 0x1 #define DATA_ATTRIB_VOLATILE 0x2 @@ -129,7 +127,7 @@ typedef struct { typedef struct { UINT16 Offset; - UINTN DataSize; + UINT32 DataSize; EFI_IP6_CONFIG_DATA_TYPE DataType; } IP6_CONFIG_DATA_RECORD; @@ -215,6 +213,26 @@ struct _IP6_CONFIG_INSTANCE { IP6_CONFIG_NVDATA Ip6NvData; }; +/** + Read the configuration data from variable storage according to the VarName and + gEfiIp6ConfigProtocolGuid. It checks the integrity of variable data. If the + data is corrupted, it clears the variable data to ZERO. Othewise, it outputs the + configuration data to IP6_CONFIG_INSTANCE. + + @param[in] VarName The pointer to the variable name + @param[in, out] Instance The pointer to the IP6 config instance data. + + @retval EFI_NOT_FOUND The variable can not be found or already corrupted. + @retval EFI_OUT_OF_RESOURCES Fail to allocate resource to complete the operation. + @retval EFI_SUCCESS The configuration data was retrieved successfully. + +**/ +EFI_STATUS +Ip6ConfigReadConfigData ( + IN CHAR16 *VarName, + IN OUT IP6_CONFIG_INSTANCE *Instance + ); + /** The event process routine when the DHCPv6 server is answered with a reply packet for an information request. @@ -279,12 +297,12 @@ Ip6ConfigCleanInstance ( ); /** - Destory the Dhcp6 child in IP6_CONFIG_INSTANCE and release the resources. + Destroy the Dhcp6 child in IP6_CONFIG_INSTANCE and release the resources. @param[in, out] Instance The buffer of IP6_CONFIG_INSTANCE to be freed. @retval EFI_SUCCESS The child was successfully destroyed. - @retval Others Failed to destory the child. + @retval Others Failed to destroy the child. **/ EFI_STATUS