BZ: https://bugzilla.tianocore.org/show_bug.cgi?id=4243 TdxHelperLib provides below helper functions for a td-guest. - TdxHelperProcessTdHob - TdxHelperMeasureTdHob - TdxHelperMeasureCfvImage - TdxHelperBuildGuidHobForTdxMeasurement TdxHelperLibNull is the NULL instance of TdxHelperLib. Cc: Erdem Aktas <erdemaktas@google.com> Cc: James Bottomley <jejb@linux.ibm.com> Cc: Jiewen Yao <jiewen.yao@intel.com> Cc: Gerd Hoffmann <kraxel@redhat.com> Cc: Tom Lendacky <thomas.lendacky@amd.com> Cc: Michael Roth <michael.roth@amd.com> Acked-by: Gerd Hoffmann <kraxel@redhat.com> Reviewed-by: Jiewen Yao <jiewen.yao@intel.com> Signed-off-by: Min Xu <min.m.xu@intel.com>
		
			
				
	
	
		
			80 lines
		
	
	
		
			1.9 KiB
		
	
	
	
		
			C
		
	
	
	
	
	
			
		
		
	
	
			80 lines
		
	
	
		
			1.9 KiB
		
	
	
	
		
			C
		
	
	
	
	
	
| /** @file
 | |
|   NULL instance of TdxHelperLib
 | |
| 
 | |
|   Copyright (c) 2022 - 2023, Intel Corporation. All rights reserved.<BR>
 | |
| 
 | |
|   SPDX-License-Identifier: BSD-2-Clause-Patent
 | |
| 
 | |
| **/
 | |
| 
 | |
| #include <Base.h>
 | |
| #include <PiPei.h>
 | |
| 
 | |
| /**
 | |
|   In Tdx guest, some information need to be passed from host VMM to guest
 | |
|   firmware. For example, the memory resource, etc. These information are
 | |
|   prepared by host VMM and put in TdHob which is described in TdxMetadata.
 | |
|   TDVF processes the TdHob to accept memories.
 | |
| 
 | |
|   @retval   EFI_SUCCESS   Successfully process the TdHob
 | |
|   @retval   Others        Other error as indicated
 | |
| **/
 | |
| EFI_STATUS
 | |
| EFIAPI
 | |
| TdxHelperProcessTdHob (
 | |
|   VOID
 | |
|   )
 | |
| {
 | |
|   return EFI_UNSUPPORTED;
 | |
| }
 | |
| 
 | |
| /**
 | |
|   In Tdx guest, TdHob is passed from host VMM to guest firmware and it contains
 | |
|   the information of the memory resource. From the security perspective before
 | |
|   it is consumed, it should be measured and extended.
 | |
|  *
 | |
|  * @retval EFI_SUCCESS Successfully measure the TdHob
 | |
|  * @retval Others      Other error as indicated
 | |
|  */
 | |
| EFI_STATUS
 | |
| EFIAPI
 | |
| TdxHelperMeasureTdHob (
 | |
|   VOID
 | |
|   )
 | |
| {
 | |
|   return EFI_UNSUPPORTED;
 | |
| }
 | |
| 
 | |
| /**
 | |
|  * In Tdx guest, Configuration FV (CFV) is treated as external input because it
 | |
|  * may contain the data provided by VMM. From the sucurity perspective Cfv image
 | |
|  * should be measured before it is consumed.
 | |
|  *
 | |
|  * @retval EFI_SUCCESS Successfully measure the CFV image
 | |
|  * @retval Others      Other error as indicated
 | |
|  */
 | |
| EFI_STATUS
 | |
| EFIAPI
 | |
| TdxHelperMeasureCfvImage (
 | |
|   VOID
 | |
|   )
 | |
| {
 | |
|   return EFI_UNSUPPORTED;
 | |
| }
 | |
| 
 | |
| /**
 | |
|   Build the GuidHob for tdx measurements which were done in SEC phase.
 | |
|   The measurement values are stored in WorkArea.
 | |
| 
 | |
|   @retval EFI_SUCCESS  The GuidHob is built successfully
 | |
|   @retval Others       Other errors as indicated
 | |
| **/
 | |
| EFI_STATUS
 | |
| EFIAPI
 | |
| TdxHelperBuildGuidHobForTdxMeasurement (
 | |
|   VOID
 | |
|   )
 | |
| {
 | |
|   return EFI_UNSUPPORTED;
 | |
| }
 |