From ccde62954ccf5ee73b40774b8f5d3a9dd2869201 Mon Sep 17 00:00:00 2001 From: Jan Janssen Date: Tue, 14 Mar 2023 14:32:43 +0100 Subject: [PATCH] stub: Remove overlapping PE section warning Now that we always create PE images with a non-zero image base we cannot run into this issue anymore. Any tool that still uses the old hard-coded section offsets will end up creating bad images with sections below the image base. objcopy will warn about this and any PE loader will simply refuse to load such an image. Meanwhile updated tools do not use hard-coded offsets anymore. --- src/boot/efi/pe.c | 8 -------- 1 file changed, 8 deletions(-) diff --git a/src/boot/efi/pe.c b/src/boot/efi/pe.c index 9b1b10d4a12..e516417c071 100644 --- a/src/boot/efi/pe.c +++ b/src/boot/efi/pe.c @@ -153,17 +153,9 @@ static void locate_sections( assert(offsets); assert(sizes); - size_t prev_section_addr = 0; - for (size_t i = 0; i < n_table; i++) { const PeSectionHeader *sect = section_table + i; - if (in_memory) { - if (prev_section_addr > sect->VirtualAddress) - log_error("Overlapping PE sections detected. Boot may fail due to image memory corruption!"); - prev_section_addr = sect->VirtualAddress + sect->VirtualSize; - } - for (size_t j = 0; sections[j]; j++) { if (memcmp(sect->Name, sections[j], strlen8(sections[j])) != 0) continue; -- 2.47.3