The .gdb_index const table can be empty, if no symbol table entry refers to a name or CU. Which technically means the symbol table is empty or has only zero members.
* src/readelf.c (print_gdb_index_section): Check const_off is not past the end of the data section, it can be at the end. Signed-off-by: Mark Wielaard <m...@klomp.org> --- src/readelf.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/readelf.c b/src/readelf.c index 8d96443daa83..21cacd7b6c06 100644 --- a/src/readelf.c +++ b/src/readelf.c @@ -11679,7 +11679,7 @@ print_gdb_index_section (Dwfl_Module *dwflmod, Ebl *ebl, } const unsigned char *const_start = data->d_buf + const_off; - if (const_off >= data->d_size) + if (const_off > data->d_size) goto invalid_data; const unsigned char *shortcut_start = NULL; -- 2.46.0