From d11f9cbecac4a5ac3848a68597028d1924f3ff6b Mon Sep 17 00:00:00 2001 From: Roland McGrath Date: Wed, 26 Mar 2008 20:51:59 +0000 Subject: libdwfl/ * dwfl_module_getdwarf.c (load_symtab): Don't return success for SHT_DYNSYM, just set *SYMSCN like the comment says. --- src/ChangeLog | 6 ++++++ src/elflint.c | 5 +++-- 2 files changed, 9 insertions(+), 2 deletions(-) (limited to 'src') diff --git a/src/ChangeLog b/src/ChangeLog index 0bba5ca5..37127f56 100644 --- a/src/ChangeLog +++ b/src/ChangeLog @@ -1,3 +1,9 @@ +2008-03-26 Roland McGrath + + * elflint.c (check_program_header): Accept PT_GNU_RELRO p_flags + that matches its PT_LOAD's p_flags &~ PF_W. On sparc, PF_X really + is valid in RELRO. + 2008-02-29 Roland McGrath * readelf.c (print_attributes): Add a cast. diff --git a/src/elflint.c b/src/elflint.c index 54aa1114..4448eef1 100644 --- a/src/elflint.c +++ b/src/elflint.c @@ -4055,9 +4055,10 @@ more than one GNU_RELRO entry in program header\n")); if ((phdr2->p_flags & PF_W) == 0) ERROR (gettext ("\ loadable segment GNU_RELRO applies to is not writable\n")); - if ((phdr2->p_flags & PF_X) != 0) + if ((phdr2->p_flags &~ PF_W) != (phdr->p_flags &~ PF_W)) ERROR (gettext ("\ -loadable segment GNU_RELRO applies to is executable\n")); +loadable segment [%u] flags do not match GNU_RELRO [%u] flags\n"), + cnt, inner); break; } } -- cgit v1.2.3