summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorBruceX Wang <brucex.wang@intel.com>2023-06-14 21:42:22 +0800
committermergify[bot] <37929162+mergify[bot]@users.noreply.github.com>2023-06-14 14:49:52 +0000
commitaad98d915abe5ba092e318913028ed47937a9447 (patch)
treec32ec02bc35736c5df21f74bc6c301282a61c943
parent51bb8eb76c4e8c57d5484c647ecf0b5c5fa8fa94 (diff)
downloadedk2-aad98d915abe5ba092e318913028ed47937a9447.tar.gz
edk2-aad98d915abe5ba092e318913028ed47937a9447.tar.bz2
edk2-aad98d915abe5ba092e318913028ed47937a9447.zip
UefiPayloadPkg: Fix incorrect code on AddSectionHeader
Fix incorrect code on AddSectionHeader32() and AddSectionHeader64() Cc: Guo Dong <guo.dong@intel.com> Cc: Sean Rhodes <sean@starlabs.systems> Cc: James Lu <james.lu@intel.com> Cc: Gua Guo <gua.guo@intel.com> Signed-off-by: BruceX Wang <brucex.wang@intel.com> Reviewed-by: Gua Guo <gua.guo@intel.com>
-rw-r--r--UefiPayloadPkg/Tools/ElfFv.py6
1 files changed, 3 insertions, 3 deletions
diff --git a/UefiPayloadPkg/Tools/ElfFv.py b/UefiPayloadPkg/Tools/ElfFv.py
index a3d5bf08b9..3f0f9272a7 100644
--- a/UefiPayloadPkg/Tools/ElfFv.py
+++ b/UefiPayloadPkg/Tools/ElfFv.py
@@ -267,7 +267,7 @@ def AddSectionHeader64(SHentry, NewUPLEntrylen, SectionHeaderEntrySize, Index, R
# if RemoveNameOffset != 0 that is remove function.
if (RemoveNameOffset != 0):
if (unpacked_header.sh_name > RemoveNameOffset):
- unpacked_header.sh_name -= RemoveNameOffset
+ unpacked_header.sh_name -= len (SectionName)
# Modify size of name string section entry in section entry.
if (Index == StringIndexNumber):
unpacked_header.sh_size -= len (SectionName)
@@ -298,7 +298,7 @@ def AddSectionHeader32(SHentry, NewUPLEntrylen, SectionHeaderEntrySize, Index, R
# if RemoveNameOffset != 0 that is remove function.
if (RemoveNameOffset != 0):
if (unpacked_header.sh_name > RemoveNameOffset):
- unpacked_header.sh_name -= RemoveNameOffset
+ unpacked_header.sh_name -= len (SectionName)
# Modify size of name string section entry in section entry.
if (Index == StringIndexNumber):
unpacked_header.sh_size -= len (SectionName)
@@ -710,7 +710,7 @@ def AddSection32(UniversalPayloadEntry, AddSectionName, ElfHeaderOffset, Section
ElfHeaderSize = 52
ElfHandPH = ElfHeaderSize + (elf_header.e_phnum * elf_header.e_phentsize)
NewUPLEntry = UPLEntry[:ElfHandPH]
- # Keep Section header and program header table, AddSection64() only recombined section and section header.
+ # Keep Section header and program header table, AddSection32() only recombined section and section header.
NewUPLEntry = bytearray(NewUPLEntry)
# Sections is recombined.
# 1. name of added section is added in name string section.