aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorSzabolcs Nagy <szabolcs.nagy@arm.com>2021-06-21 10:51:05 +0100
committerSzabolcs Nagy <szabolcs.nagy@arm.com>2022-10-27 14:46:52 +0100
commit2f3c9e7127b6fac0a712cf59b7a9a2f007bf7711 (patch)
tree65d5e9c84c7121ef29fbdb4076eda359b246a30e
parent3a41a4efd8a2d1cd5f95c0ec85f2f76ca97ae80a (diff)
downloadglibc-2f3c9e7127b6fac0a712cf59b7a9a2f007bf7711.tar
glibc-2f3c9e7127b6fac0a712cf59b7a9a2f007bf7711.tar.gz
glibc-2f3c9e7127b6fac0a712cf59b7a9a2f007bf7711.tar.bz2
glibc-2f3c9e7127b6fac0a712cf59b7a9a2f007bf7711.zip
cheri: elf: Use elfptr_t in _dl_protect_relro
Derive the start of the relro area from the RW capability of the dso.
-rw-r--r--elf/dl-reloc.c3
1 files changed, 1 insertions, 2 deletions
diff --git a/elf/dl-reloc.c b/elf/dl-reloc.c
index 756bf950f6..4656015ea2 100644
--- a/elf/dl-reloc.c
+++ b/elf/dl-reloc.c
@@ -353,8 +353,7 @@ _dl_relocate_object (struct link_map *l, struct r_scope_elem *scope[],
void
_dl_protect_relro (struct link_map *l)
{
- ElfW(Addr) start = ALIGN_DOWN((l->l_addr
- + l->l_relro_addr),
+ elfptr_t start = ALIGN_DOWN(dl_rx_ptr (l, l->l_relro_addr),
GLRO(dl_pagesize));
ElfW(Addr) end = ALIGN_DOWN((l->l_addr
+ l->l_relro_addr