diff options
author | Ulrich Drepper <drepper@redhat.com> | 2004-01-24 08:36:13 +0000 |
---|---|---|
committer | Ulrich Drepper <drepper@redhat.com> | 2004-01-24 08:36:13 +0000 |
commit | e8648a5a87fd0c472cb6002df8111b9a8ec3fba6 (patch) | |
tree | 87992735d4b94569a7938455ff304b630b66b8f0 /sysdeps | |
parent | 75631a576303d3bf23c0db077dcf5dc15c863063 (diff) | |
download | glibc-e8648a5a87fd0c472cb6002df8111b9a8ec3fba6.tar glibc-e8648a5a87fd0c472cb6002df8111b9a8ec3fba6.tar.gz glibc-e8648a5a87fd0c472cb6002df8111b9a8ec3fba6.tar.bz2 glibc-e8648a5a87fd0c472cb6002df8111b9a8ec3fba6.zip |
Update.
2004-01-22 Jakub Jelinek <jakub@redhat.com>
* elf/dl-reloc.c (_dl_relocate_object): Move PT_GNU_RELRO protection
into...
(_dl_protect_relro): New routine.
* sysdeps/generic/ldsodefs.h (_dl_protect_relro): New prototype.
* elf/rtld.c (_dl_start_final): Copy l_relro_addr and l_relro_size
from bootstrap_map.
(_dl_main): Don't set GL(_dl_loaded)->l_relro_{addr,size} here.
Call _dl_protect_relro for libraries if prelinking.
Diffstat (limited to 'sysdeps')
-rw-r--r-- | sysdeps/generic/ldsodefs.h | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/sysdeps/generic/ldsodefs.h b/sysdeps/generic/ldsodefs.h index a05e5c76d4..eed7893a1e 100644 --- a/sysdeps/generic/ldsodefs.h +++ b/sysdeps/generic/ldsodefs.h @@ -697,6 +697,10 @@ extern void _dl_relocate_object_internal (struct link_map *map, int lazy, int consider_profiling) attribute_hidden; +/* Protect PT_GNU_RELRO area. */ +extern void _dl_protect_relro (struct link_map *map) + internal_function attribute_hidden; + /* Call _dl_signal_error with a message about an unhandled reloc type. TYPE is the result of ELFW(R_TYPE) (r_info), i.e. an R_<CPU>_* value. PLT is nonzero if this was a PLT reloc; it just affects the message. */ |