summaryrefslogtreecommitdiffstats
path: root/libexec
diff options
context:
space:
mode:
authorgjb <gjb@FreeBSD.org>2016-01-12 01:23:45 +0000
committergjb <gjb@FreeBSD.org>2016-01-12 01:23:45 +0000
commitc036d05fd19b4636eabd8980516f40cd720995b3 (patch)
treea558df0d8454924abff628312575a56d5132d888 /libexec
parent46171d6b451918f84a7cd081856fd46d1e0a36d6 (diff)
parent35f5091fba85d82f9564c381a5b0e430aaeacfd4 (diff)
downloadFreeBSD-src-c036d05fd19b4636eabd8980516f40cd720995b3.zip
FreeBSD-src-c036d05fd19b4636eabd8980516f40cd720995b3.tar.gz
MFH
Sponsored by: The FreeBSD Foundation
Diffstat (limited to 'libexec')
-rw-r--r--libexec/rtld-elf/rtld.c6
-rw-r--r--libexec/rtld-elf/rtld.h1
2 files changed, 2 insertions, 5 deletions
diff --git a/libexec/rtld-elf/rtld.c b/libexec/rtld-elf/rtld.c
index 424f2ea..ad5d359 100644
--- a/libexec/rtld-elf/rtld.c
+++ b/libexec/rtld-elf/rtld.c
@@ -1144,13 +1144,13 @@ digest_dynamic1(Obj_Entry *obj, int early, const Elf_Dyn **dyn_rpath,
* is mapped read-only. DT_MIPS_RLD_MAP is used instead.
*/
+#ifndef __mips__
case DT_DEBUG:
- if (!obj->writable_dynamic)
- break;
if (!early)
dbg("Filling in DT_DEBUG entry");
((Elf_Dyn*)dynp)->d_un.d_ptr = (Elf_Addr) &r_debug;
break;
+#endif
case DT_FLAGS:
if (dynp->d_un.d_val & DF_ORIGIN)
@@ -1331,8 +1331,6 @@ digest_phdr(const Elf_Phdr *phdr, int phnum, caddr_t entry, const char *path)
break;
case PT_DYNAMIC:
- if (ph->p_flags & PROT_WRITE)
- obj->writable_dynamic = true;
obj->dynamic = (const Elf_Dyn *)(ph->p_vaddr + obj->relocbase);
break;
diff --git a/libexec/rtld-elf/rtld.h b/libexec/rtld-elf/rtld.h
index f151db0..72a632e 100644
--- a/libexec/rtld-elf/rtld.h
+++ b/libexec/rtld-elf/rtld.h
@@ -264,7 +264,6 @@ typedef struct Struct_Obj_Entry {
bool valid_hash_sysv : 1; /* A valid System V hash hash tag is available */
bool valid_hash_gnu : 1; /* A valid GNU hash tag is available */
bool dlopened : 1; /* dlopen()-ed (vs. load statically) */
- bool writable_dynamic : 1; /* PT_DYNAMIC is writable */
struct link_map linkmap; /* For GDB and dlinfo() */
Objlist dldags; /* Object belongs to these dlopened DAGs (%) */
OpenPOWER on IntegriCloud