From f6895046ad74f67fc357d2c9f76dcb6313c13ab9 Mon Sep 17 00:00:00 2001 From: Roland McGrath Date: Sat, 13 Aug 2005 20:56:52 +0000 Subject: [PATCH] 2005-08-13 Roland McGrath * elflint.c (check_program_header): Use ebl_segment_type_name and allow any p_type it recognizes. Include p_type value in error message for unknown type. --- src/ChangeLog | 6 ++++++ src/elflint.c | 8 +++++--- 2 files changed, 11 insertions(+), 3 deletions(-) diff --git a/src/ChangeLog b/src/ChangeLog index ce6887ba3..5dd61f2e5 100644 --- a/src/ChangeLog +++ b/src/ChangeLog @@ -1,3 +1,9 @@ +2005-08-13 Roland McGrath + + * elflint.c (check_program_header): Use ebl_segment_type_name and + allow any p_type it recognizes. Include p_type value in error + message for unknown type. + 2005-08-13 Ulrich Drepper * elflint.c (check_symtab): Simplify last change a bit. Pass ehdr diff --git a/src/elflint.c b/src/elflint.c index 59e6eaf94..65b3fb727 100644 --- a/src/elflint.c +++ b/src/elflint.c @@ -3088,10 +3088,12 @@ only executables, shared objects, and core files can have program headers\n")); } if (phdr->p_type >= PT_NUM && phdr->p_type != PT_GNU_EH_FRAME - && phdr->p_type != PT_GNU_STACK && phdr->p_type != PT_GNU_RELRO) + && phdr->p_type != PT_GNU_STACK && phdr->p_type != PT_GNU_RELRO + /* Check for a known machine-specific type. */ + && ebl_segment_type_name (ebl, phdr->p_type, NULL, 0) == NULL) ERROR (gettext ("\ -program header entry %d: unknown program header entry type\n"), - cnt); +program header entry %d: unknown program header entry type %#" PRIx64 "\n"), + cnt, (uint64_t) phdr->p_type); if (phdr->p_type == PT_LOAD) has_loadable_segment = true; -- 2.47.3