When printing section headers, also include a key to what each flag is at the end of the section header output.
Signed-off-by: Samuel Zeter <samuelze...@gmail.com> --- src/readelf.c | 11 +++++++++++ 1 file changed, 11 insertions(+) diff --git a/src/readelf.c b/src/readelf.c index 12d85472..f9c1c742 100644 --- a/src/readelf.c +++ b/src/readelf.c @@ -341,6 +341,7 @@ static void print_strings (Ebl *ebl); static void dump_archive_index (Elf *, const char *); static void print_dwarf_addr (Dwfl_Module *dwflmod, int address_size, Dwarf_Addr address, Dwarf_Addr raw); +static void print_flag_info(void); enum dyn_idx { @@ -1406,9 +1407,19 @@ There are %zd section headers, starting at offset %#" PRIx64 ":\n\ } } + print_flag_info(); fputc ('\n', stdout); } +/* Print flag information. */ +static void +print_flag_info (void) +{ + puts ("Key to Flags:"); + puts (" W (write), A (alloc), X (execute), M (merge), S (strings), I (info),"); + puts (" L (link order), N (extra OS processing required), G (group), T (TLS),"); + puts (" C (compressed), O (ordered), R (GNU retain), E (exclude)"); +} /* Print the program header. */ static void -- 2.48.1