From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mga05.intel.com (mga05.intel.com [192.55.52.43]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by ml01.01.org (Postfix) with ESMTPS id 548CC21AEB0C0 for ; Tue, 25 Jul 2017 23:26:35 -0700 (PDT) Received: from orsmga003.jf.intel.com ([10.7.209.27]) by fmsmga105.fm.intel.com with ESMTP; 25 Jul 2017 23:28:37 -0700 X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.40,413,1496127600"; d="scan'208";a="997280361" Received: from jiaxinwu-mobl2.ccr.corp.intel.com ([10.239.196.131]) by orsmga003.jf.intel.com with ESMTP; 25 Jul 2017 23:28:36 -0700 From: Jiaxin Wu To: edk2-devel@lists.01.org Cc: Ye Ting , Fu Siyuan , Wu Jiaxin Date: Wed, 26 Jul 2017 14:28:29 +0800 Message-Id: <1501050511-16884-2-git-send-email-jiaxin.wu@intel.com> X-Mailer: git-send-email 1.9.5.msysgit.1 In-Reply-To: <1501050511-16884-1-git-send-email-jiaxin.wu@intel.com> References: <1501050511-16884-1-git-send-email-jiaxin.wu@intel.com> Subject: [Patch 1/3] MdePkg: Update the comments of Ip4Config2/Ip6Config Protocol X-BeenThere: edk2-devel@lists.01.org X-Mailman-Version: 2.1.22 Precedence: list List-Id: EDK II Development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 26 Jul 2017 06:26:35 -0000 Update the comments of Ip4Config2/Ip6Config Protocol to consistent with UEFI Spec 2.7, which provides the capability to clear specific individual data types. Cc: Ye Ting Cc: Fu Siyuan Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Wu Jiaxin --- MdePkg/Include/Protocol/Ip4Config2.h | 17 +++++++++++------ MdePkg/Include/Protocol/Ip6Config.h | 15 ++++++++++----- 2 files changed, 21 insertions(+), 11 deletions(-) diff --git a/MdePkg/Include/Protocol/Ip4Config2.h b/MdePkg/Include/Protocol/Ip4Config2.h index fca2bb5..ced63cb 100644 --- a/MdePkg/Include/Protocol/Ip4Config2.h +++ b/MdePkg/Include/Protocol/Ip4Config2.h @@ -1,10 +1,10 @@ /** @file This file provides a definition of the EFI IPv4 Configuration II Protocol. -Copyright (c) 2015 - 2016, Intel Corporation. All rights reserved.
+Copyright (c) 2015 - 2017, 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 which accompanies this distribution. The full text of the license may be found at
http://opensource.org/licenses/bsd-license.php @@ -49,29 +49,35 @@ typedef enum { Ip4Config2DataTypePolicy, /// /// The station addresses set manually for the EFI IPv4 network /// stack. It is only configurable when the policy is /// Ip4Config2PolicyStatic. The corresponding Data is of - /// type EFI_IP4_CONFIG2_MANUAL_ADDRESS. + /// type EFI_IP4_CONFIG2_MANUAL_ADDRESS. When DataSize + /// is 0 and Data is NULL, the existing configuration is cleared + /// from the EFI IPv4 Configuration II Protocol instance. /// Ip4Config2DataTypeManualAddress, /// /// The gateway addresses set manually for the EFI IPv4 network /// stack running on the communication device this EFI IPv4 /// Configuration II Protocol manages. It is not configurable when /// the policy is Ip4Config2PolicyDhcp. The gateway /// addresses must be unicast IPv4 addresses. The corresponding /// Data is a pointer to an array of EFI_IPv4_ADDRESS instances. + /// When DataSize is 0 and Data is NULL, the existing configuration + /// is cleared from the EFI IPv4 Configuration II Protocol instance. /// Ip4Config2DataTypeGateway, /// /// The DNS server list for the EFI IPv4 network stack running on /// the communication device this EFI IPv4 Configuration II /// Protocol manages. It is not configurable when the policy is /// Ip4Config2PolicyDhcp. The DNS server addresses must be /// unicast IPv4 addresses. The corresponding Data is a pointer to - /// an array of EFI_IPv4_ADDRESS instances. + /// an array of EFI_IPv4_ADDRESS instances. When DataSize + /// is 0 and Data is NULL, the existing configuration is cleared + /// from the EFI IPv4 Configuration II Protocol instance. /// Ip4Config2DataTypeDnsServer, Ip4Config2DataTypeMaximum } EFI_IP4_CONFIG2_DATA_TYPE; @@ -184,13 +190,12 @@ typedef struct { @retval EFI_SUCCESS The specified configuration data for the EFI IPv4 network stack is set successfully. @retval EFI_INVALID_PARAMETER One or more of the following are TRUE: This is NULL. - Data is NULL. - One or more fields in Data do not match the requirement of the data type - indicated by DataType. + One or more fields in Data and DataSize do not match the + requirement of the data type indicated by DataType. @retval EFI_WRITE_PROTECTED The specified configuration data is read-only or the specified configuration data can not be set under the current policy. @retval EFI_ACCESS_DENIED Another set operation on the specified configuration data is already in process. @retval EFI_NOT_READY An asynchronous process is invoked to set the specified configuration data and the process is not finished yet. diff --git a/MdePkg/Include/Protocol/Ip6Config.h b/MdePkg/Include/Protocol/Ip6Config.h index b2c3be9..bcb8ba2 100644 --- a/MdePkg/Include/Protocol/Ip6Config.h +++ b/MdePkg/Include/Protocol/Ip6Config.h @@ -1,10 +1,10 @@ /** @file This file provides a definition of the EFI IPv6 Configuration Protocol. -Copyright (c) 2008 - 2011, Intel Corporation. All rights reserved.
+Copyright (c) 2008 - 2017, 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 which accompanies this distribution. The full text of the license may be found at
http://opensource.org/licenses/bsd-license.php @@ -64,29 +64,35 @@ typedef enum { Ip6ConfigDataTypeDupAddrDetectTransmits, /// /// The station addresses set manually for the EFI /// IPv6 network stack. It is only configurable when the policy is /// Ip6ConfigPolicyManual. The corresponding Data is a - /// pointer to an array of EFI_IPv6_ADDRESS instances. + /// pointer to an array of EFI_IPv6_ADDRESS instances. When + /// DataSize is 0 and Data is NULL, the existing configuration + /// is cleared from the EFI IPv6 Configuration Protocol instance. /// Ip6ConfigDataTypeManualAddress, /// /// The gateway addresses set manually for the EFI IPv6 /// network stack running on the communication device this EFI /// IPv6 Configuration Protocol manages. It is not configurable when /// the policy is Ip6ConfigPolicyAutomatic. The gateway /// addresses must be unicast IPv6 addresses. The corresponding /// Data is a pointer to an array of EFI_IPv6_ADDRESS instances. + /// When DataSize is 0 and Data is NULL, the existing configuration + /// is cleared from the EFI IPv6 Configuration Protocol instance. /// Ip6ConfigDataTypeGateway, /// /// The DNS server list for the EFI IPv6 network stack /// running on the communication device this EFI IPv6 /// Configuration Protocol manages. It is not configurable when the /// policy is Ip6ConfigPolicyAutomatic.The DNS server /// addresses must be unicast IPv6 addresses. The corresponding /// Data is a pointer to an array of EFI_IPv6_ADDRESS instances. + /// When DataSize is 0 and Data is NULL, the existing configuration + /// is cleared from the EFI IPv6 Configuration Protocol instance. /// Ip6ConfigDataTypeDnsServer, /// /// The number of this enumeration memebers. /// @@ -226,13 +232,12 @@ typedef struct { @retval EFI_SUCCESS The specified configuration data for the EFI IPv6 network stack is set successfully. @retval EFI_INVALID_PARAMETER One or more of the following are TRUE: - This is NULL. - - Data is NULL. - - One or more fields in Data do not match the requirement of the - data type indicated by DataType. + - One or more fields in Data and DataSize do not match the + requirement of the data type indicated by DataType. @retval EFI_WRITE_PROTECTED The specified configuration data is read-only or the specified configuration data can not be set under the current policy @retval EFI_ACCESS_DENIED Another set operation on the specified configuration data is already in process. @retval EFI_NOT_READY An asynchronous process is invoked to set the specified -- 1.9.5.msysgit.1