From ecd34d35b22aa142650c97eaeb93f8c6c1b679db Mon Sep 17 00:00:00 2001 From: Nik Date: Wed, 12 Jul 2023 14:10:01 +0200 Subject: [PATCH] patterns/elf: Fixed p_data definition in Phdr structs --- patterns/elf.hexpat | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/patterns/elf.hexpat b/patterns/elf.hexpat index 90c19a2..f34774f 100644 --- a/patterns/elf.hexpat +++ b/patterns/elf.hexpat @@ -563,7 +563,7 @@ struct Elf32_Phdr { PF p_flags; Elf32_Word p_align; - if (p_offset > 0 && p_filesz > 0 && (p_offset + p_filesz) < std::mem::size() && p_filesz < std::mem::size()) + if (p_offset >= 0 && p_filesz > 0 && (p_offset + p_filesz) <= std::mem::size() && p_filesz <= std::mem::size()) u8 p_data[p_filesz] @ p_offset [[sealed]]; }; @@ -577,7 +577,7 @@ struct Elf64_Phdr { Elf64_Xword p_memsz; Elf64_Xword p_align; - if (p_offset > 0 && p_filesz > 0 && (p_offset + p_filesz) < std::mem::size() && p_filesz < std::mem::size()) + if (p_offset >= 0 && p_filesz > 0 && (p_offset + p_filesz) <= std::mem::size() && p_filesz <= std::mem::size()) u8 p_data[p_filesz] @ p_offset [[sealed]]; }; @@ -819,4 +819,4 @@ fn main() { ); } } -}; \ No newline at end of file +};