SecurityPkg Tcg2: Remove use of module internal API InternalIsZeroBuffer()
This commit removes the internal implementation of the function InternalIsZeroBuffer(). Instead, it will use the API IsZeroBuffer() from BaseMemoryLib in MdePkg. Cc: Jiewen Yao <jiewen.yao@intel.com> Cc: Chao Zhang <chao.b.zhang@intel.com> Cc: Liming Gao <liming.gao@intel.com> Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Hao Wu <hao.a.wu@intel.com> Reviewed-by: Chao Zhang <chao.b.zhang@intel.com> Reviewed-by: Liming Gao <liming.gao@intel.com>
This commit is contained in:
@@ -616,33 +616,6 @@ FillBufferWithTCG2EventLogFormat (
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
|
||||||
Check if buffer is all zero.
|
|
||||||
|
|
||||||
@param[in] Buffer Buffer to be checked.
|
|
||||||
@param[in] BufferSize Size of buffer to be checked.
|
|
||||||
|
|
||||||
@retval TRUE Buffer is all zero.
|
|
||||||
@retval FALSE Buffer is not all zero.
|
|
||||||
**/
|
|
||||||
BOOLEAN
|
|
||||||
InternalIsZeroBuffer (
|
|
||||||
IN VOID *Buffer,
|
|
||||||
IN UINTN BufferSize
|
|
||||||
)
|
|
||||||
{
|
|
||||||
UINT8 *BufferData;
|
|
||||||
UINTN Index;
|
|
||||||
|
|
||||||
BufferData = Buffer;
|
|
||||||
for (Index = 0; Index < BufferSize; Index++) {
|
|
||||||
if (BufferData[Index] != 0) {
|
|
||||||
return FALSE;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
return TRUE;
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
This function publish the TCG2 configuration Form for TPM device.
|
This function publish the TCG2 configuration Form for TPM device.
|
||||||
|
|
||||||
@@ -735,7 +708,7 @@ InstallTcg2ConfigForm (
|
|||||||
} else {
|
} else {
|
||||||
TempBuffer[0] = 0;
|
TempBuffer[0] = 0;
|
||||||
for (Index = 0; Index < Pcrs.count; Index++) {
|
for (Index = 0; Index < Pcrs.count; Index++) {
|
||||||
if (!InternalIsZeroBuffer (Pcrs.pcrSelections[Index].pcrSelect, Pcrs.pcrSelections[Index].sizeofSelect)) {
|
if (!IsZeroBuffer (Pcrs.pcrSelections[Index].pcrSelect, Pcrs.pcrSelections[Index].sizeofSelect)) {
|
||||||
AppendBufferWithTpmAlgHash (TempBuffer, sizeof(TempBuffer), Pcrs.pcrSelections[Index].hash);
|
AppendBufferWithTpmAlgHash (TempBuffer, sizeof(TempBuffer), Pcrs.pcrSelections[Index].hash);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@@ -201,33 +201,6 @@ InternalDumpHex (
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
|
||||||
Check if buffer is all zero.
|
|
||||||
|
|
||||||
@param[in] Buffer Buffer to be checked.
|
|
||||||
@param[in] BufferSize Size of buffer to be checked.
|
|
||||||
|
|
||||||
@retval TRUE Buffer is all zero.
|
|
||||||
@retval FALSE Buffer is not all zero.
|
|
||||||
**/
|
|
||||||
BOOLEAN
|
|
||||||
InternalIsZeroBuffer (
|
|
||||||
IN VOID *Buffer,
|
|
||||||
IN UINTN BufferSize
|
|
||||||
)
|
|
||||||
{
|
|
||||||
UINT8 *BufferData;
|
|
||||||
UINTN Index;
|
|
||||||
|
|
||||||
BufferData = Buffer;
|
|
||||||
for (Index = 0; Index < BufferSize; Index++) {
|
|
||||||
if (BufferData[Index] != 0) {
|
|
||||||
return FALSE;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
return TRUE;
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
Get All processors EFI_CPU_LOCATION in system. LocationBuf is allocated inside the function
|
Get All processors EFI_CPU_LOCATION in system. LocationBuf is allocated inside the function
|
||||||
Caller is responsible to free LocationBuf.
|
Caller is responsible to free LocationBuf.
|
||||||
@@ -2471,31 +2444,31 @@ DriverEntry (
|
|||||||
switch (Pcrs.pcrSelections[Index].hash) {
|
switch (Pcrs.pcrSelections[Index].hash) {
|
||||||
case TPM_ALG_SHA1:
|
case TPM_ALG_SHA1:
|
||||||
TpmHashAlgorithmBitmap |= EFI_TCG2_BOOT_HASH_ALG_SHA1;
|
TpmHashAlgorithmBitmap |= EFI_TCG2_BOOT_HASH_ALG_SHA1;
|
||||||
if (!InternalIsZeroBuffer (Pcrs.pcrSelections[Index].pcrSelect, Pcrs.pcrSelections[Index].sizeofSelect)) {
|
if (!IsZeroBuffer (Pcrs.pcrSelections[Index].pcrSelect, Pcrs.pcrSelections[Index].sizeofSelect)) {
|
||||||
ActivePCRBanks |= EFI_TCG2_BOOT_HASH_ALG_SHA1;
|
ActivePCRBanks |= EFI_TCG2_BOOT_HASH_ALG_SHA1;
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
case TPM_ALG_SHA256:
|
case TPM_ALG_SHA256:
|
||||||
TpmHashAlgorithmBitmap |= EFI_TCG2_BOOT_HASH_ALG_SHA256;
|
TpmHashAlgorithmBitmap |= EFI_TCG2_BOOT_HASH_ALG_SHA256;
|
||||||
if (!InternalIsZeroBuffer (Pcrs.pcrSelections[Index].pcrSelect, Pcrs.pcrSelections[Index].sizeofSelect)) {
|
if (!IsZeroBuffer (Pcrs.pcrSelections[Index].pcrSelect, Pcrs.pcrSelections[Index].sizeofSelect)) {
|
||||||
ActivePCRBanks |= EFI_TCG2_BOOT_HASH_ALG_SHA256;
|
ActivePCRBanks |= EFI_TCG2_BOOT_HASH_ALG_SHA256;
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
case TPM_ALG_SHA384:
|
case TPM_ALG_SHA384:
|
||||||
TpmHashAlgorithmBitmap |= EFI_TCG2_BOOT_HASH_ALG_SHA384;
|
TpmHashAlgorithmBitmap |= EFI_TCG2_BOOT_HASH_ALG_SHA384;
|
||||||
if (!InternalIsZeroBuffer (Pcrs.pcrSelections[Index].pcrSelect, Pcrs.pcrSelections[Index].sizeofSelect)) {
|
if (!IsZeroBuffer (Pcrs.pcrSelections[Index].pcrSelect, Pcrs.pcrSelections[Index].sizeofSelect)) {
|
||||||
ActivePCRBanks |= EFI_TCG2_BOOT_HASH_ALG_SHA384;
|
ActivePCRBanks |= EFI_TCG2_BOOT_HASH_ALG_SHA384;
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
case TPM_ALG_SHA512:
|
case TPM_ALG_SHA512:
|
||||||
TpmHashAlgorithmBitmap |= EFI_TCG2_BOOT_HASH_ALG_SHA512;
|
TpmHashAlgorithmBitmap |= EFI_TCG2_BOOT_HASH_ALG_SHA512;
|
||||||
if (!InternalIsZeroBuffer (Pcrs.pcrSelections[Index].pcrSelect, Pcrs.pcrSelections[Index].sizeofSelect)) {
|
if (!IsZeroBuffer (Pcrs.pcrSelections[Index].pcrSelect, Pcrs.pcrSelections[Index].sizeofSelect)) {
|
||||||
ActivePCRBanks |= EFI_TCG2_BOOT_HASH_ALG_SHA512;
|
ActivePCRBanks |= EFI_TCG2_BOOT_HASH_ALG_SHA512;
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
case TPM_ALG_SM3_256:
|
case TPM_ALG_SM3_256:
|
||||||
TpmHashAlgorithmBitmap |= EFI_TCG2_BOOT_HASH_ALG_SM3_256;
|
TpmHashAlgorithmBitmap |= EFI_TCG2_BOOT_HASH_ALG_SM3_256;
|
||||||
if (!InternalIsZeroBuffer (Pcrs.pcrSelections[Index].pcrSelect, Pcrs.pcrSelections[Index].sizeofSelect)) {
|
if (!IsZeroBuffer (Pcrs.pcrSelections[Index].pcrSelect, Pcrs.pcrSelections[Index].sizeofSelect)) {
|
||||||
ActivePCRBanks |= EFI_TCG2_BOOT_HASH_ALG_SM3_256;
|
ActivePCRBanks |= EFI_TCG2_BOOT_HASH_ALG_SM3_256;
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
|
@@ -224,33 +224,6 @@ EndofPeiSignalNotifyCallBack (
|
|||||||
return EFI_SUCCESS;
|
return EFI_SUCCESS;
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
|
||||||
Check if buffer is all zero.
|
|
||||||
|
|
||||||
@param[in] Buffer Buffer to be checked.
|
|
||||||
@param[in] BufferSize Size of buffer to be checked.
|
|
||||||
|
|
||||||
@retval TRUE Buffer is all zero.
|
|
||||||
@retval FALSE Buffer is not all zero.
|
|
||||||
**/
|
|
||||||
BOOLEAN
|
|
||||||
InternalIsZeroBuffer (
|
|
||||||
IN VOID *Buffer,
|
|
||||||
IN UINTN BufferSize
|
|
||||||
)
|
|
||||||
{
|
|
||||||
UINT8 *BufferData;
|
|
||||||
UINTN Index;
|
|
||||||
|
|
||||||
BufferData = Buffer;
|
|
||||||
for (Index = 0; Index < BufferSize; Index++) {
|
|
||||||
if (BufferData[Index] != 0) {
|
|
||||||
return FALSE;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
return TRUE;
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
Get TPML_DIGEST_VALUES data size.
|
Get TPML_DIGEST_VALUES data size.
|
||||||
|
|
||||||
@@ -383,27 +356,27 @@ SetTpm2HashMask (
|
|||||||
DEBUG ((EFI_D_INFO, "hash - %x\n", Pcrs.pcrSelections[Index].hash));
|
DEBUG ((EFI_D_INFO, "hash - %x\n", Pcrs.pcrSelections[Index].hash));
|
||||||
switch (Pcrs.pcrSelections[Index].hash) {
|
switch (Pcrs.pcrSelections[Index].hash) {
|
||||||
case TPM_ALG_SHA1:
|
case TPM_ALG_SHA1:
|
||||||
if (!InternalIsZeroBuffer (Pcrs.pcrSelections[Index].pcrSelect, Pcrs.pcrSelections[Index].sizeofSelect)) {
|
if (!IsZeroBuffer (Pcrs.pcrSelections[Index].pcrSelect, Pcrs.pcrSelections[Index].sizeofSelect)) {
|
||||||
ActivePcrBanks |= EFI_TCG2_BOOT_HASH_ALG_SHA1;
|
ActivePcrBanks |= EFI_TCG2_BOOT_HASH_ALG_SHA1;
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
case TPM_ALG_SHA256:
|
case TPM_ALG_SHA256:
|
||||||
if (!InternalIsZeroBuffer (Pcrs.pcrSelections[Index].pcrSelect, Pcrs.pcrSelections[Index].sizeofSelect)) {
|
if (!IsZeroBuffer (Pcrs.pcrSelections[Index].pcrSelect, Pcrs.pcrSelections[Index].sizeofSelect)) {
|
||||||
ActivePcrBanks |= EFI_TCG2_BOOT_HASH_ALG_SHA256;
|
ActivePcrBanks |= EFI_TCG2_BOOT_HASH_ALG_SHA256;
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
case TPM_ALG_SHA384:
|
case TPM_ALG_SHA384:
|
||||||
if (!InternalIsZeroBuffer (Pcrs.pcrSelections[Index].pcrSelect, Pcrs.pcrSelections[Index].sizeofSelect)) {
|
if (!IsZeroBuffer (Pcrs.pcrSelections[Index].pcrSelect, Pcrs.pcrSelections[Index].sizeofSelect)) {
|
||||||
ActivePcrBanks |= EFI_TCG2_BOOT_HASH_ALG_SHA384;
|
ActivePcrBanks |= EFI_TCG2_BOOT_HASH_ALG_SHA384;
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
case TPM_ALG_SHA512:
|
case TPM_ALG_SHA512:
|
||||||
if (!InternalIsZeroBuffer (Pcrs.pcrSelections[Index].pcrSelect, Pcrs.pcrSelections[Index].sizeofSelect)) {
|
if (!IsZeroBuffer (Pcrs.pcrSelections[Index].pcrSelect, Pcrs.pcrSelections[Index].sizeofSelect)) {
|
||||||
ActivePcrBanks |= EFI_TCG2_BOOT_HASH_ALG_SHA512;
|
ActivePcrBanks |= EFI_TCG2_BOOT_HASH_ALG_SHA512;
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
case TPM_ALG_SM3_256:
|
case TPM_ALG_SM3_256:
|
||||||
if (!InternalIsZeroBuffer (Pcrs.pcrSelections[Index].pcrSelect, Pcrs.pcrSelections[Index].sizeofSelect)) {
|
if (!IsZeroBuffer (Pcrs.pcrSelections[Index].pcrSelect, Pcrs.pcrSelections[Index].sizeofSelect)) {
|
||||||
ActivePcrBanks |= EFI_TCG2_BOOT_HASH_ALG_SM3_256;
|
ActivePcrBanks |= EFI_TCG2_BOOT_HASH_ALG_SM3_256;
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
|
Reference in New Issue
Block a user