From 0eaa97f0e8629bcf678ff4de2678e4cba00f1c91 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Roger=20Pau=20Monn=C3=A9?= Date: Tue, 23 Feb 2021 15:56:27 +0100 Subject: [PATCH] stand/multiboot2: fix header length check Check whether we have reached the end of the buffer using search_size instead of MULTIBOOT_SEARCH, which is the maximum defined by the specification, but the file can be shorter than that. This prevents printing a harmless error message when loading a file that is smaller than MULTIBOOT_SEARCH. Sponsored by: Citrix Systems R&D MFC after: 3 days Fixes: adda2797eb2a ('stand/multiboot2: add support for booting a Xen dom0 in UEFI mode') --- stand/efi/loader/arch/amd64/multiboot2.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/stand/efi/loader/arch/amd64/multiboot2.c b/stand/efi/loader/arch/amd64/multiboot2.c index 6ee36afcb881..4d7b2713685d 100644 --- a/stand/efi/loader/arch/amd64/multiboot2.c +++ b/stand/efi/loader/arch/amd64/multiboot2.c @@ -107,7 +107,7 @@ loadfile(char *filename, uint64_t dest, struct preloaded_file **result) break; } - if (i >= MULTIBOOT_SEARCH) { + if (i >= search_size) { error = EFTYPE; goto out; }