summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorderaadt <deraadt@openbsd.org>2016-05-22 01:40:57 +0000
committerderaadt <deraadt@openbsd.org>2016-05-22 01:40:57 +0000
commit6d5bcfa287000a6ee56eea0998445488caf1df5e (patch)
tree6985b3e6206d887c02ec17b12f50319e29d17891
parentsync (diff)
downloadwireguard-openbsd-6d5bcfa287000a6ee56eea0998445488caf1df5e.tar.xz
wireguard-openbsd-6d5bcfa287000a6ee56eea0998445488caf1df5e.zip
Ignore the listed protection (which may contain X) when making page
writeable temporary. As pointed out by kettenis, discussed with guenther
-rw-r--r--libexec/ld.so/i386/rtld_machine.c4
1 files changed, 2 insertions, 2 deletions
diff --git a/libexec/ld.so/i386/rtld_machine.c b/libexec/ld.so/i386/rtld_machine.c
index 39c67b49174..e83173f7412 100644
--- a/libexec/ld.so/i386/rtld_machine.c
+++ b/libexec/ld.so/i386/rtld_machine.c
@@ -1,4 +1,4 @@
-/* $OpenBSD: rtld_machine.c,v 1.32 2015/11/02 07:02:53 guenther Exp $ */
+/* $OpenBSD: rtld_machine.c,v 1.33 2016/05/22 01:40:57 deraadt Exp $ */
/*
* Copyright (c) 2002 Dale Rahn
@@ -443,7 +443,7 @@ _dl_md_reloc_got(elf_object_t *object, int lazy)
llist = llist->next) {
if (!(llist->prot & PROT_WRITE))
_dl_mprotect(llist->start, llist->size,
- llist->prot|PROT_WRITE);
+ PROT_READ | PROT_WRITE);
}
for (i = 0; i < num/sizeof(Elf_Rel); i++, rel++) {
Elf_Addr *where;