Changeset 108794 in vbox for trunk/src/VBox/Devices/EFI/FirmwareNew/OvmfPkg/IntelTdx/TdxHelperLib/SecTdxHelper.c
- Timestamp:
- Mar 31, 2025 11:31:09 AM (2 weeks ago)
- svn:sync-xref-src-repo-rev:
- 168237
- Location:
- trunk/src/VBox/Devices/EFI/FirmwareNew
- Files:
-
- 2 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/src/VBox/Devices/EFI/FirmwareNew
-
Property svn:mergeinfo
changed from (toggle deleted branches)
to (toggle deleted branches)/vendor/edk2/current 103735-103757,103769-103776,129194-164365 /vendor/edk2/current 103735-103757,103769-103776,129194-168232
-
Property svn:mergeinfo
changed from (toggle deleted branches)
-
trunk/src/VBox/Devices/EFI/FirmwareNew/OvmfPkg/IntelTdx/TdxHelperLib/SecTdxHelper.c
r105670 r108794 24 24 #include <ConfidentialComputingGuestAttr.h> 25 25 #include <Library/TdxHelperLib.h> 26 #include <Library/TdxMeasurementLib.h> 26 27 27 28 #define ALIGNED_2MB_MASK 0x1fffff … … 644 645 EFI_RESOURCE_ATTRIBUTE_READ_ONLY_PROTECTED | 645 646 EFI_RESOURCE_ATTRIBUTE_READ_ONLY_PROTECTABLE | 647 EFI_RESOURCE_ATTRIBUTE_ENCRYPTED| 648 EFI_RESOURCE_ATTRIBUTE_SPECIAL_PURPOSE | 646 649 EFI_RESOURCE_ATTRIBUTE_MORE_RELIABLE))) != 0) 647 650 { … … 806 809 807 810 /** 808 * Calculate the sha384 of input Data and extend it to RTMR register.809 *810 * @param RtmrIndex Index of the RTMR register811 * @param DataToHash Data to be hashed812 * @param DataToHashLen Length of the data813 * @param Digest Hash value of the input data814 * @param DigestLen Length of the hash value815 *816 * @retval EFI_SUCCESS Successfully hash and extend to RTMR817 * @retval Others Other errors as indicated818 */819 STATIC820 EFI_STATUS821 HashAndExtendToRtmr (822 IN UINT32 RtmrIndex,823 IN VOID *DataToHash,824 IN UINTN DataToHashLen,825 OUT UINT8 *Digest,826 IN UINTN DigestLen827 )828 {829 EFI_STATUS Status;830 831 if ((DataToHash == NULL) || (DataToHashLen == 0)) {832 return EFI_INVALID_PARAMETER;833 }834 835 if ((Digest == NULL) || (DigestLen != SHA384_DIGEST_SIZE)) {836 return EFI_INVALID_PARAMETER;837 }838 839 //840 // Calculate the sha384 of the data841 //842 if (!Sha384HashAll (DataToHash, DataToHashLen, Digest)) {843 return EFI_ABORTED;844 }845 846 //847 // Extend to RTMR848 //849 Status = TdExtendRtmr (850 (UINT32 *)Digest,851 SHA384_DIGEST_SIZE,852 (UINT8)RtmrIndex853 );854 855 ASSERT (!EFI_ERROR (Status));856 return Status;857 }858 859 /**860 811 In Tdx guest, TdHob is passed from host VMM to guest firmware and it contains 861 812 the information of the memory resource. From the security perspective before … … 887 838 } 888 839 889 Status = HashAndExtendToRtmr (840 Status = TdxMeasurementHashAndExtendToRtmr ( 890 841 0, 891 842 (UINT8 *)TdHob, … … 932 883 OVMF_WORK_AREA *WorkArea; 933 884 934 Status = HashAndExtendToRtmr (885 Status = TdxMeasurementHashAndExtendToRtmr ( 935 886 0, 936 887 (UINT8 *)(UINTN)PcdGet32 (PcdOvmfFlashNvStorageVariableBase),
Note:
See TracChangeset
for help on using the changeset viewer.