[PATCH] modpost: fix off by one in is_executable_section()

From: Dan Carpenter
Date: Thu Jun 08 2023 - 05:15:42 EST


The > comparison should be >= to prevent an out of bounds array
access.

Fixes: 52dc0595d540 ("modpost: handle relocations mismatch in __ex_table.")
Signed-off-by: Dan Carpenter <dan.carpenter@xxxxxxxxxx>
---
scripts/mod/modpost.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/scripts/mod/modpost.c b/scripts/mod/modpost.c
index d10f5bdcb753..c3cb69c276ae 100644
--- a/scripts/mod/modpost.c
+++ b/scripts/mod/modpost.c
@@ -1139,7 +1139,7 @@ static Elf_Sym *find_tosym(struct elf_info *elf, Elf_Addr addr, Elf_Sym *sym)

static bool is_executable_section(struct elf_info *elf, unsigned int secndx)
{
- if (secndx > elf->num_sections)
+ if (secndx >= elf->num_sections)
return false;

return (elf->sechdrs[secndx].sh_flags & SHF_EXECINSTR) != 0;
--
2.39.2