diff options
| author | Roland McGrath <[email protected]> | 2008-03-26 20:51:59 +0000 |
|---|---|---|
| committer | Roland McGrath <[email protected]> | 2008-03-26 20:51:59 +0000 |
| commit | d11f9cbecac4a5ac3848a68597028d1924f3ff6b (patch) | |
| tree | bebe015f7e02d133fa3dec01f3d34c76fdb74756 /src | |
| parent | 472b20d24ffbc2485f8a5e2be208a11d77e8e846 (diff) | |
libdwfl/
* dwfl_module_getdwarf.c (load_symtab): Don't return success for
SHT_DYNSYM, just set *SYMSCN like the comment says.
Diffstat (limited to 'src')
| -rw-r--r-- | src/ChangeLog | 6 | ||||
| -rw-r--r-- | src/elflint.c | 5 |
2 files changed, 9 insertions, 2 deletions
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 <[email protected]> + + * 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 <[email protected]> * 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; } } |
