UINT8 TempBuf[sizeof(TCG_EfiSpecIDEventStruct) + (HASH_COUNT * sizeof(TCG_EfiSpecIdEventAlgorithmSize)) + sizeof(UINT8)];\r
TCG_PCR_EVENT_HDR FirstPcrEvent;\r
TCG_EfiSpecIdEventAlgorithmSize *DigestSize;\r
+ TCG_EfiSpecIdEventAlgorithmSize *TempDigestSize;\r
UINT8 *VendorInfoSize;\r
UINT32 NumberOfAlgorithms;\r
\r
NumberOfAlgorithms = 0;\r
DigestSize = (TCG_EfiSpecIdEventAlgorithmSize *)((UINT8 *)TcgEfiSpecIdEventStruct + sizeof(*TcgEfiSpecIdEventStruct) + sizeof(NumberOfAlgorithms));\r
if ((mTcgDxeData.BsCap.ActivePcrBanks & EFI_TCG2_BOOT_HASH_ALG_SHA1) != 0) {\r
- DigestSize[NumberOfAlgorithms].algorithmId = TPM_ALG_SHA1;\r
- DigestSize[NumberOfAlgorithms].digestSize = SHA1_DIGEST_SIZE;\r
+ TempDigestSize = DigestSize;\r
+ TempDigestSize += NumberOfAlgorithms;\r
+ TempDigestSize->algorithmId = TPM_ALG_SHA1;\r
+ TempDigestSize->digestSize = SHA1_DIGEST_SIZE;\r
NumberOfAlgorithms++;\r
}\r
if ((mTcgDxeData.BsCap.ActivePcrBanks & EFI_TCG2_BOOT_HASH_ALG_SHA256) != 0) {\r
- DigestSize[NumberOfAlgorithms].algorithmId = TPM_ALG_SHA256;\r
- DigestSize[NumberOfAlgorithms].digestSize = SHA256_DIGEST_SIZE;\r
+ TempDigestSize = DigestSize;\r
+ TempDigestSize += NumberOfAlgorithms;\r
+ TempDigestSize->algorithmId = TPM_ALG_SHA256;\r
+ TempDigestSize->digestSize = SHA256_DIGEST_SIZE;\r
NumberOfAlgorithms++;\r
}\r
if ((mTcgDxeData.BsCap.ActivePcrBanks & EFI_TCG2_BOOT_HASH_ALG_SHA384) != 0) {\r
- DigestSize[NumberOfAlgorithms].algorithmId = TPM_ALG_SHA384;\r
- DigestSize[NumberOfAlgorithms].digestSize = SHA384_DIGEST_SIZE;\r
+ TempDigestSize = DigestSize;\r
+ TempDigestSize += NumberOfAlgorithms;\r
+ TempDigestSize->algorithmId = TPM_ALG_SHA384;\r
+ TempDigestSize->digestSize = SHA384_DIGEST_SIZE;\r
NumberOfAlgorithms++;\r
}\r
if ((mTcgDxeData.BsCap.ActivePcrBanks & EFI_TCG2_BOOT_HASH_ALG_SHA512) != 0) {\r
- DigestSize[NumberOfAlgorithms].algorithmId = TPM_ALG_SHA512;\r
- DigestSize[NumberOfAlgorithms].digestSize = SHA512_DIGEST_SIZE;\r
+ TempDigestSize = DigestSize;\r
+ TempDigestSize += NumberOfAlgorithms;\r
+ TempDigestSize->algorithmId = TPM_ALG_SHA512;\r
+ TempDigestSize->digestSize = SHA512_DIGEST_SIZE;\r
NumberOfAlgorithms++;\r
}\r
if ((mTcgDxeData.BsCap.ActivePcrBanks & EFI_TCG2_BOOT_HASH_ALG_SM3_256) != 0) {\r
- DigestSize[NumberOfAlgorithms].algorithmId = TPM_ALG_SM3_256;\r
- DigestSize[NumberOfAlgorithms].digestSize = SM3_256_DIGEST_SIZE;\r
+ TempDigestSize = DigestSize;\r
+ TempDigestSize += NumberOfAlgorithms;\r
+ TempDigestSize->algorithmId = TPM_ALG_SM3_256;\r
+ TempDigestSize->digestSize = SM3_256_DIGEST_SIZE;\r
NumberOfAlgorithms++;\r
}\r
CopyMem (TcgEfiSpecIdEventStruct + 1, &NumberOfAlgorithms, sizeof(NumberOfAlgorithms));\r
- VendorInfoSize = (UINT8 *)&DigestSize[NumberOfAlgorithms];\r
+ TempDigestSize = DigestSize;\r
+ TempDigestSize += NumberOfAlgorithms;\r
+ VendorInfoSize = (UINT8 *)TempDigestSize;\r
*VendorInfoSize = 0;\r
\r
//\r