ImageTool: Ensure PE section names are terminated

This commit is contained in:
Marvin Häuser 2023-06-03 15:53:35 +02:00 committed by MikhailKrichanov
parent e239aed80d
commit 8db3b2a6a2

View File

@ -53,7 +53,13 @@ InternalFinalizeExtraSection (
assert (Size == ImageToolBufferGetSize (Buffer) - Offset); assert (Size == ImageToolBufferGetSize (Buffer) - Offset);
strncpy ((char *)SectionHeader->Name, Name, sizeof (SectionHeader->Name)); strncpy (
(char *)SectionHeader->Name,
Name,
sizeof (SectionHeader->Name)
);
SectionHeader->Name[ARRAY_SIZE (SectionHeader->Name) - 1] = 0;
SectionHeader->VirtualSize = ALIGN_VALUE (Size, PeHdr->SectionAlignment); SectionHeader->VirtualSize = ALIGN_VALUE (Size, PeHdr->SectionAlignment);
SectionHeader->VirtualAddress = PeHdr->SizeOfImage; SectionHeader->VirtualAddress = PeHdr->SizeOfImage;
SectionHeader->SizeOfRawData = ALIGN_VALUE (Size, PeHdr->FileAlignment); SectionHeader->SizeOfRawData = ALIGN_VALUE (Size, PeHdr->FileAlignment);