diff --git a/SecurityPkg/Include/Library/Tpm2CommandLib.h b/SecurityPkg/Include/Library/Tpm2CommandLib.h index 1a837fd11f..563cfc26e3 100644 --- a/SecurityPkg/Include/Library/Tpm2CommandLib.h +++ b/SecurityPkg/Include/Library/Tpm2CommandLib.h @@ -988,6 +988,19 @@ GetHashSizeFromAlgo ( IN TPMI_ALG_HASH HashAlgo ); +/** + Get TPML_DIGEST_VALUES data size. + + @param[in] DigestList TPML_DIGEST_VALUES data. + + @return TPML_DIGEST_VALUES data size. +**/ +UINT32 +EFIAPI +GetDigestListSize( + IN TPML_DIGEST_VALUES *DigestList + ); + /** This function get digest from digest list. diff --git a/SecurityPkg/Library/Tpm2CommandLib/Tpm2Help.c b/SecurityPkg/Library/Tpm2CommandLib/Tpm2Help.c index 2df18dfe07..96753b79d5 100644 --- a/SecurityPkg/Library/Tpm2CommandLib/Tpm2Help.c +++ b/SecurityPkg/Library/Tpm2CommandLib/Tpm2Help.c @@ -165,6 +165,32 @@ CopyAuthSessionResponse ( return (UINT32)(UINTN)(Buffer - (UINT8 *)AuthSessionIn); } +/** + Get TPML_DIGEST_VALUES data size. + + @param[in] DigestList TPML_DIGEST_VALUES data. + + @return TPML_DIGEST_VALUES data size. +**/ +UINT32 +EFIAPI +GetDigestListSize ( + IN TPML_DIGEST_VALUES *DigestList + ) +{ + UINTN Index; + UINT16 DigestSize; + UINT32 TotalSize; + + TotalSize = sizeof(DigestList->count); + for (Index = 0; Index < DigestList->count; Index++) { + DigestSize = GetHashSizeFromAlgo (DigestList->digests[Index].hashAlg); + TotalSize += sizeof(DigestList->digests[Index].hashAlg) + DigestSize; + } + + return TotalSize; +} + /** This function get digest from digest list. diff --git a/SecurityPkg/Tcg/Tcg2Dxe/Tcg2Dxe.c b/SecurityPkg/Tcg/Tcg2Dxe/Tcg2Dxe.c index 9080e47032..4d582c03d4 100644 --- a/SecurityPkg/Tcg/Tcg2Dxe/Tcg2Dxe.c +++ b/SecurityPkg/Tcg/Tcg2Dxe/Tcg2Dxe.c @@ -863,31 +863,6 @@ TcgDxeLogEvent ( return Status; } -/** - Get TPML_DIGEST_VALUES data size. - - @param[in] DigestList TPML_DIGEST_VALUES data. - - @return TPML_DIGEST_VALUES data size. -**/ -UINT32 -GetDigestListSize ( - IN TPML_DIGEST_VALUES *DigestList - ) -{ - UINTN Index; - UINT16 DigestSize; - UINT32 TotalSize; - - TotalSize = sizeof(DigestList->count); - for (Index = 0; Index < DigestList->count; Index++) { - DigestSize = GetHashSizeFromAlgo (DigestList->digests[Index].hashAlg); - TotalSize += sizeof(DigestList->digests[Index].hashAlg) + DigestSize; - } - - return TotalSize; -} - /** Get TPML_DIGEST_VALUES compact binary buffer size. diff --git a/SecurityPkg/Tcg/Tcg2Pei/Tcg2Pei.c b/SecurityPkg/Tcg/Tcg2Pei/Tcg2Pei.c index adc0350a48..c67cdffe48 100644 --- a/SecurityPkg/Tcg/Tcg2Pei/Tcg2Pei.c +++ b/SecurityPkg/Tcg/Tcg2Pei/Tcg2Pei.c @@ -189,31 +189,6 @@ EndofPeiSignalNotifyCallBack ( return EFI_SUCCESS; } -/** - Get TPML_DIGEST_VALUES data size. - - @param[in] DigestList TPML_DIGEST_VALUES data. - - @return TPML_DIGEST_VALUES data size. -**/ -UINT32 -GetDigestListSize ( - IN TPML_DIGEST_VALUES *DigestList - ) -{ - UINTN Index; - UINT16 DigestSize; - UINT32 TotalSize; - - TotalSize = sizeof(DigestList->count); - for (Index = 0; Index < DigestList->count; Index++) { - DigestSize = GetHashSizeFromAlgo (DigestList->digests[Index].hashAlg); - TotalSize += sizeof(DigestList->digests[Index].hashAlg) + DigestSize; - } - - return TotalSize; -} - /** Return if hash alg is supported in TPM PCR bank.