aboutsummaryrefslogtreecommitdiff
path: root/malloc/alloc_buffer_alloc_array.c
diff options
context:
space:
mode:
authorSzabolcs Nagy <szabolcs.nagy@arm.com>2022-04-07 08:43:00 +0100
committerSzabolcs Nagy <szabolcs.nagy@arm.com>2022-10-27 14:46:53 +0100
commit5eedf66625842a56c0ed7e16a1f79fda4b52b425 (patch)
tree360f525c980d5410819e8580cff19cf7c6f8608e /malloc/alloc_buffer_alloc_array.c
parent50bbdb94d32a75a577f393bf58cbc14f67d2fbea (diff)
downloadglibc-5eedf66625842a56c0ed7e16a1f79fda4b52b425.tar.xz
glibc-5eedf66625842a56c0ed7e16a1f79fda4b52b425.zip
cheri: elf: Setup per module RX and RW capabilities
_dl_map_segments must use capabilities, this required changes beyond the obvious elfptr_t changes: - Ensure map_end is derived from map_start, - Use strict mmap bounds with MAP_FIXED: c->mapend is aligned up to pagesize which may be out of bounds of l_map_start (covering the load segments, but bounds are not aligned up), so use c->dataend instead. Propagate l_map_start and l_rw_start capabilities of ld.so and exe that come from auxv, and ensure they are not recomputed incorrectly by ld.so. The l_rw_range should exclude the relro region, but in libc.so and ld.so this does not work: symbols are accessed before relro is applied and then the permission should be writable.
Diffstat (limited to 'malloc/alloc_buffer_alloc_array.c')
0 files changed, 0 insertions, 0 deletions