From nobody Fri May 3 23:22:45 2024 Delivered-To: importer@patchew.org Authentication-Results: mx.zohomail.com; spf=none (zoho.com: 198.145.21.10 is neither permitted nor denied by domain of lists.01.org) smtp.mailfrom=edk2-devel-bounces@lists.01.org Return-Path: Received: from ml01.01.org (ml01.01.org [198.145.21.10]) by mx.zohomail.com with SMTPS id 152167250615870.63132210451181; Wed, 21 Mar 2018 15:48:26 -0700 (PDT) Received: from [127.0.0.1] (localhost [IPv6:::1]) by ml01.01.org (Postfix) with ESMTP id E81F1225B0287; Wed, 21 Mar 2018 15:41:52 -0700 (PDT) Received: from mga04.intel.com (mga04.intel.com [192.55.52.120]) (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 7CA2722489CAE for ; Wed, 21 Mar 2018 15:41:51 -0700 (PDT) Received: from fmsmga006.fm.intel.com ([10.253.24.20]) by fmsmga104.fm.intel.com with ESMTP/TLS/DHE-RSA-AES256-GCM-SHA384; 21 Mar 2018 15:48:22 -0700 Received: from mdkinney-mobl2.amr.corp.intel.com ([10.241.98.49]) by fmsmga006.fm.intel.com with ESMTP; 21 Mar 2018 15:48:21 -0700 X-Original-To: edk2-devel@lists.01.org Received-SPF: none (zoho.com: 198.145.21.10 is neither permitted nor denied by domain of lists.01.org) client-ip=198.145.21.10; envelope-from=edk2-devel-bounces@lists.01.org; helo=ml01.01.org; Received-SPF: Pass (sender SPF authorized) identity=mailfrom; client-ip=192.55.52.120; helo=mga04.intel.com; envelope-from=michael.d.kinney@intel.com; receiver=edk2-devel@lists.01.org X-Amp-Result: SKIPPED(no attachment in message) X-Amp-File-Uploaded: False X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.48,341,1517904000"; d="scan'208";a="213499876" From: Michael D Kinney To: edk2-devel@lists.01.org Date: Wed, 21 Mar 2018 15:48:17 -0700 Message-Id: <20180321224817.20644-1-michael.d.kinney@intel.com> X-Mailer: git-send-email 2.14.2.windows.3 Subject: [edk2] [Patch] Vlv2TbltDevicePkg: Remove DxeTcg2PhysicalPresenceLibNull X-BeenThere: edk2-devel@lists.01.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: EDK II Development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: "Kinney, Michael D" , Jiewen Yao MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable Errors-To: edk2-devel-bounces@lists.01.org Sender: "edk2-devel" X-ZohoMail: RSF_4 Z_629925259 SPT_0 Content-Type: text/plain; charset="utf-8" From: "Kinney, Michael D" https://bugzilla.tianocore.org/show_bug.cgi?id=3D908 The following commit that to use Tcg2 instead of TrEE breaks the build of Vlv2TbltDevicePkg\Library\DxeTcg2PhysicalPresenceLibNull https://github.com/tianocore/edk2/commit/9461604e1490f73fdbcc8e957dbe75f75c= 73b027#diff-c85873f3649e35873a11936ace983807 The correct fix is to remove the DxeTcg2PhysicalPresenceLibNull library instance and update library mappings in DSC files. Cc: Jiewen Yao C: David Wei Cc: Mang Guo Signed-off-by: Michael D Kinney Contributed-under: TianoCore Contribution Agreement 1.1 Reviewed-by: Jiewen.yao@intel.com Reviewed-by: zwei4 =20 --- .../DxeTcg2PhysicalPresenceLibNull.c | 242 -----------------= ---- .../DxeTcg2PhysicalPresenceLibNull.inf | 46 ---- Vlv2TbltDevicePkg/PlatformPkgGccX64.dsc | 4 +- Vlv2TbltDevicePkg/PlatformPkgIA32.dsc | 4 +- Vlv2TbltDevicePkg/PlatformPkgX64.dsc | 4 +- 5 files changed, 3 insertions(+), 297 deletions(-) delete mode 100644 Vlv2TbltDevicePkg/Library/DxeTcg2PhysicalPresenceLibNul= l/DxeTcg2PhysicalPresenceLibNull.c delete mode 100644 Vlv2TbltDevicePkg/Library/DxeTcg2PhysicalPresenceLibNul= l/DxeTcg2PhysicalPresenceLibNull.inf diff --git a/Vlv2TbltDevicePkg/Library/DxeTcg2PhysicalPresenceLibNull/DxeTc= g2PhysicalPresenceLibNull.c b/Vlv2TbltDevicePkg/Library/DxeTcg2PhysicalPres= enceLibNull/DxeTcg2PhysicalPresenceLibNull.c deleted file mode 100644 index 96fad05527..0000000000 --- a/Vlv2TbltDevicePkg/Library/DxeTcg2PhysicalPresenceLibNull/DxeTcg2Physi= calPresenceLibNull.c +++ /dev/null @@ -1,242 +0,0 @@ -/** @file - Execute pending TPM2 requests from OS or BIOS. - - Caution: This module requires additional review when modified. - This driver will have external input - variable. - This external input must be validated carefully to avoid security issue. - - Tcg2ExecutePendingTpmRequest() will receive untrusted input and do valid= ation. - -Copyright (c) 2013 - 2015, Intel Corporation. All rights reserved.
-This program and the accompanying materials=20 -are licensed and made available under the terms and conditions of the BSD = License=20 -which accompanies this distribution. The full text of the license may be = found at=20 -http://opensource.org/licenses/bsd-license.php - -THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,=20 -WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLI= ED. - -**/ - -#include - -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include - - -/** - Get string by string id from HII Interface. - - @param[in] Id String ID. - - @retval CHAR16 * String from ID. - @retval NULL If error occurs. - -**/ -CHAR16 * -Tcg2PhysicalPresenceGetStringById ( - IN EFI_STRING_ID Id - ) -{ - return NULL; -} - -/** - Send ClearControl and Clear command to TPM. - - @param[in] PlatformAuth platform auth value. NULL means no platfor= m auth change. - - @retval EFI_SUCCESS Operation completed successfully. - @retval EFI_TIMEOUT The register can't run into the expected s= tatus in time. - @retval EFI_BUFFER_TOO_SMALL Response data buffer is too small. - @retval EFI_DEVICE_ERROR Unexpected device behavior. - -**/ -EFI_STATUS -EFIAPI -TpmCommandClear ( - IN TPM2B_AUTH *PlatformAuth OPTIONAL - ) -{ - return EFI_SUCCESS; -} - -/** - Execute physical presence operation requested by the OS. - - @param[in] PlatformAuth platform auth value. NULL means no p= latform auth change. - @param[in] CommandCode Physical presence operation value. - @param[in, out] PpiFlags The physical presence interface flag= s. - =20 - @retval TREE_PP_OPERATION_RESPONSE_BIOS_FAILURE Unknown physical presen= ce operation. - @retval TREE_PP_OPERATION_RESPONSE_BIOS_FAILURE Error occurred during s= ending command to TPM or=20 - receiving response from= TPM. - @retval Others Return code from the TP= M device after command execution. -**/ -UINT32 -Tcg2ExecutePhysicalPresence ( - IN TPM2B_AUTH *PlatformAuth, OPTIONAL - IN UINT32 CommandCode, - IN OUT EFI_TREE_PHYSICAL_PRESENCE_FLAGS *PpiFlags - ) -{ - return 0; -} - - -/** - Read the specified key for user confirmation. - - @param[in] CautionKey If true, F12 is used as confirm key; - If false, F10 is used as confirm key. - - @retval TRUE User confirmed the changes by input. - @retval FALSE User discarded the changes. -**/ -BOOLEAN -Tcg2ReadUserKey ( - IN BOOLEAN CautionKey - ) -{ - return FALSE; -} - -/** - The constructor function register UNI strings into imageHandle. - =20 - It will ASSERT() if that operation fails and it will always return EFI_S= UCCESS.=20 - - @param ImageHandle The firmware allocated handle for the EFI image. - @param SystemTable A pointer to the EFI System Table. - =20 - @retval EFI_SUCCESS The constructor successfully added string package. - @retval Other value The constructor can't add string package. -**/ -EFI_STATUS -EFIAPI -Tcg2PhysicalPresenceLibConstructor ( - IN EFI_HANDLE ImageHandle, - IN EFI_SYSTEM_TABLE *SystemTable - ) -{ - return EFI_SUCCESS; -} - -/** - Display the confirm text and get user confirmation. - - @param[in] TpmPpCommand The requested TPM physical presence command. - - @retval TRUE The user has confirmed the changes. - @retval FALSE The user doesn't confirm the changes. -**/ -BOOLEAN -Tcg2UserConfirm ( - IN UINT32 TpmPpCommand - ) -{ - return FALSE; =20 -} - -/** - Check if there is a valid physical presence command request. Also update= s parameter value=20 - to whether the requested physical presence command already confirmed by = user -=20 - @param[in] TcgPpData EFI Tcg2 Physical Presence reques= t data.=20 - @param[in] Flags The physical presence interface f= lags. - @param[out] RequestConfirmed If the physical presence operat= ion command required user confirm from UI. - True, it indicates the comman= d doesn't require user confirm, or already confirmed=20 - in last boot cycle by u= ser. - False, it indicates the comma= nd need user confirm from UI. - - @retval TRUE Physical Presence operation command is valid. - @retval FALSE Physical Presence operation command is invalid. - -**/ -BOOLEAN -Tcg2HaveValidTpmRequest ( - IN EFI_TREE_PHYSICAL_PRESENCE *TcgPpData, - IN EFI_TREE_PHYSICAL_PRESENCE_FLAGS Flags, - OUT BOOLEAN *RequestConfirmed - ) -{ - return TRUE; -} - - -/** - Check and execute the requested physical presence command. - - Caution: This function may receive untrusted input. - TcgPpData variable is external input, so this function will validate - its data structure to be valid value. - - @param[in] PlatformAuth platform auth value. NULL means no platf= orm auth change. - @param[in] TcgPpData Point to the physical presence NV variab= le. - @param[in] Flags The physical presence interface flags. -**/ -VOID -Tcg2ExecutePendingTpmRequest ( - IN TPM2B_AUTH *PlatformAuth, OPTIONAL - IN EFI_TREE_PHYSICAL_PRESENCE *TcgPpData, - IN EFI_TREE_PHYSICAL_PRESENCE_FLAGS Flags - ) -{ - return; -} - -/** - Check and execute the pending TPM request. - - The TPM request may come from OS or BIOS. This API will display request = information and wait=20 - for user confirmation if TPM request exists. The TPM request will be sen= t to TPM device after - the TPM request is confirmed, and one or more reset may be required to m= ake TPM request to=20 - take effect. - =20 - This API should be invoked after console in and console out are all read= y as they are required - to display request information and get user input to confirm the request= . =20 - - @param[in] PlatformAuth platform auth value. NULL mea= ns no platform auth change. -**/ -VOID -EFIAPI -Tcg2PhysicalPresenceLibProcessRequest ( - IN TPM2B_AUTH *PlatformAuth OPTIONAL - ) -{ - return; -} - -/** - Check if the pending TPM request needs user input to confirm. - - The TPM request may come from OS. This API will check if TPM request exi= sts and need user - input to confirmation. - =20 - @retval TRUE TPM needs input to confirm user physical presence. - @retval FALSE TPM doesn't need input to confirm user physical p= resence. - -**/ -BOOLEAN -EFIAPI -Tcg2PhysicalPresenceLibNeedUserConfirm( - VOID - ) -{ - - return FALSE; -} - diff --git a/Vlv2TbltDevicePkg/Library/DxeTcg2PhysicalPresenceLibNull/DxeTc= g2PhysicalPresenceLibNull.inf b/Vlv2TbltDevicePkg/Library/DxeTcg2PhysicalPr= esenceLibNull/DxeTcg2PhysicalPresenceLibNull.inf deleted file mode 100644 index b67fd13893..0000000000 --- a/Vlv2TbltDevicePkg/Library/DxeTcg2PhysicalPresenceLibNull/DxeTcg2Physi= calPresenceLibNull.inf +++ /dev/null @@ -1,46 +0,0 @@ -## @file -# Null instance of DxeTcg2PhysicalPresenceLib -# -# Copyright (c) 2010 - 2015, Intel Corporation. All rights reserved.
-# = =20 -# This program and the accompanying materials are licensed and made availa= ble under -# the terms and conditions of the BSD License that accompanies this distri= bution. =20 -# The full text of the license may be found at = =20 -# http://opensource.org/licenses/bsd-license.php. = =20 -# = =20 -# THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS, = =20 -# WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMP= LIED. =20 -# -# -# - -[Defines] - INF_VERSION =3D 0x00010005 - BASE_NAME =3D DxeTcg2PhysicalPresenceLib - FILE_GUID =3D B41B3DB3-ACC5-4fcd-9992-891F3F9C0DA5 - MODULE_TYPE =3D DXE_DRIVER - VERSION_STRING =3D 1.0 - LIBRARY_CLASS =3D Tcg2PhysicalPresenceLib|DXE_DRIVER DX= E_RUNTIME_DRIVER DXE_SAL_DRIVER UEFI_APPLICATION UEFI_DRIVER=20 - =20 -# -# The following information is for reference only and not required by the = build tools. -# -# VALID_ARCHITECTURES =3D IA32 X64 IPF EBC -# - -[Sources] - DxeTcg2PhysicalPresenceLibNull.c - -[Packages] - MdePkg/MdePkg.dec - MdeModulePkg/MdeModulePkg.dec - SecurityPkg/SecurityPkg.dec - -[LibraryClasses] - - -[Protocols] - - -[Guids] - diff --git a/Vlv2TbltDevicePkg/PlatformPkgGccX64.dsc b/Vlv2TbltDevicePkg/Pl= atformPkgGccX64.dsc index 682e090a99..dc2c5b63e9 100644 --- a/Vlv2TbltDevicePkg/PlatformPkgGccX64.dsc +++ b/Vlv2TbltDevicePkg/PlatformPkgGccX64.dsc @@ -292,9 +292,7 @@ [LibraryClasses.common] !endif TpmMeasurementLib|SecurityPkg/Library/DxeTpmMeasurementLib/DxeTpmMeasure= mentLib.inf Tcg2PhysicalPresenceLib|SecurityPkg/Library/DxeTcg2PhysicalPresenceLib/D= xeTcg2PhysicalPresenceLib.inf -!if $(FTPM_ENABLE) =3D=3D TRUE Tcg2PpVendorLib|SecurityPkg/Library/Tcg2PpVendorLibNull/Tcg2PpVendorLibN= ull.inf -!endif =20 =20 Tpm2CommandLib|SecurityPkg/Library/Tpm2CommandLib/Tpm2CommandLib.inf @@ -1201,7 +1199,7 @@ [Components.X64] !if $(FTPM_ENABLE) =3D=3D TRUE Tpm2DeviceLib|Vlv2TbltDevicePkg/Library/Tpm2DeviceLibSeCDxe/Tpm2Devi= ceLibSeC.inf !else - Tcg2PhysicalPresenceLib|$(PLATFORM_PACKAGE)/Library/DxeTcg2PhysicalP= resenceLibNull/DxeTcg2PhysicalPresenceLibNull.inf + Tpm2DeviceLib|SecurityPkg/Library/Tpm2DeviceLibTcg2/Tpm2DeviceLibTcg= 2.inf !endif } =20 diff --git a/Vlv2TbltDevicePkg/PlatformPkgIA32.dsc b/Vlv2TbltDevicePkg/Plat= formPkgIA32.dsc index baba5e2055..35a51944f3 100644 --- a/Vlv2TbltDevicePkg/PlatformPkgIA32.dsc +++ b/Vlv2TbltDevicePkg/PlatformPkgIA32.dsc @@ -292,9 +292,7 @@ [LibraryClasses.common] !endif TpmMeasurementLib|SecurityPkg/Library/DxeTpmMeasurementLib/DxeTpmMeasure= mentLib.inf Tcg2PhysicalPresenceLib|SecurityPkg/Library/DxeTcg2PhysicalPresenceLib/D= xeTcg2PhysicalPresenceLib.inf -!if $(FTPM_ENABLE) =3D=3D TRUE Tcg2PpVendorLib|SecurityPkg/Library/Tcg2PpVendorLibNull/Tcg2PpVendorLibN= ull.inf -!endif =20 =20 Tpm2CommandLib|SecurityPkg/Library/Tpm2CommandLib/Tpm2CommandLib.inf @@ -1189,7 +1187,7 @@ [Components.IA32] !if $(FTPM_ENABLE) =3D=3D TRUE Tpm2DeviceLib|Vlv2TbltDevicePkg/Library/Tpm2DeviceLibSeCDxe/Tpm2Devi= ceLibSeC.inf !else - Tcg2PhysicalPresenceLib|$(PLATFORM_PACKAGE)/Library/DxeTcg2PhysicalP= resenceLibNull/DxeTcg2PhysicalPresenceLibNull.inf + Tpm2DeviceLib|SecurityPkg/Library/Tpm2DeviceLibTcg2/Tpm2DeviceLibTcg= 2.inf !endif } =20 diff --git a/Vlv2TbltDevicePkg/PlatformPkgX64.dsc b/Vlv2TbltDevicePkg/Platf= ormPkgX64.dsc index 1f0be98944..5fab75c31e 100644 --- a/Vlv2TbltDevicePkg/PlatformPkgX64.dsc +++ b/Vlv2TbltDevicePkg/PlatformPkgX64.dsc @@ -292,9 +292,7 @@ [LibraryClasses.common] !endif TpmMeasurementLib|SecurityPkg/Library/DxeTpmMeasurementLib/DxeTpmMeasure= mentLib.inf Tcg2PhysicalPresenceLib|SecurityPkg/Library/DxeTcg2PhysicalPresenceLib/D= xeTcg2PhysicalPresenceLib.inf -!if $(FTPM_ENABLE) =3D=3D TRUE Tcg2PpVendorLib|SecurityPkg/Library/Tcg2PpVendorLibNull/Tcg2PpVendorLibN= ull.inf -!endif =20 =20 Tpm2CommandLib|SecurityPkg/Library/Tpm2CommandLib/Tpm2CommandLib.inf @@ -1201,7 +1199,7 @@ [Components.X64] !if $(FTPM_ENABLE) =3D=3D TRUE Tpm2DeviceLib|Vlv2TbltDevicePkg/Library/Tpm2DeviceLibSeCDxe/Tpm2Devi= ceLibSeC.inf !else - Tcg2PhysicalPresenceLib|$(PLATFORM_PACKAGE)/Library/DxeTcg2PhysicalP= resenceLibNull/DxeTcg2PhysicalPresenceLibNull.inf + Tpm2DeviceLib|SecurityPkg/Library/Tpm2DeviceLibTcg2/Tpm2DeviceLibTcg= 2.inf !endif } =20 --=20 2.14.2.windows.3 _______________________________________________ edk2-devel mailing list edk2-devel@lists.01.org https://lists.01.org/mailman/listinfo/edk2-devel