From 47f8d0f3c346b7e77ba84cfef88888d15959bfbc Mon Sep 17 00:00:00 2001 From: jyao1 Date: Tue, 11 Oct 2011 13:25:18 +0000 Subject: [PATCH] Fix Smbios table checksum error, by zero IntermediateChecksum and EntryPointStructureChecksum before checksum calculation. signed-off-by: jyao1 reviewed-by: elvinli git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@12527 6f19259b-4bc3-4df7-8a09-765794883524 --- MdeModulePkg/Universal/SmbiosDxe/SmbiosDxe.c | 3 +++ 1 file changed, 3 insertions(+) diff --git a/MdeModulePkg/Universal/SmbiosDxe/SmbiosDxe.c b/MdeModulePkg/Universal/SmbiosDxe/SmbiosDxe.c index 80ccb1995e..b39ea23a8f 100644 --- a/MdeModulePkg/Universal/SmbiosDxe/SmbiosDxe.c +++ b/MdeModulePkg/Universal/SmbiosDxe/SmbiosDxe.c @@ -994,6 +994,9 @@ SmbiosCreateTable ( // // Fixup checksums in the Entry Point Structure // + EntryPointStructure->IntermediateChecksum = 0; + EntryPointStructure->EntryPointStructureChecksum = 0; + EntryPointStructure->IntermediateChecksum = CalculateCheckSum8 ((UINT8 *) EntryPointStructure + 0x10, EntryPointStructure->EntryPointLength - 0x10); EntryPointStructure->EntryPointStructureChecksum = -- 2.39.2