Page MenuHomeFreeBSD

D37904.id114644.diff
No OneTemporary

D37904.id114644.diff

diff --git a/libexec/rtld-elf/aarch64/rtld_machdep.h b/libexec/rtld-elf/aarch64/rtld_machdep.h
--- a/libexec/rtld-elf/aarch64/rtld_machdep.h
+++ b/libexec/rtld-elf/aarch64/rtld_machdep.h
@@ -87,9 +87,6 @@
extern void *__tls_get_addr(tls_index *ti);
-#define RTLD_DEFAULT_STACK_PF_EXEC PF_X
-#define RTLD_DEFAULT_STACK_EXEC PROT_EXEC
-
#define md_abi_variant_hook(x)
#endif
diff --git a/libexec/rtld-elf/amd64/rtld_machdep.h b/libexec/rtld-elf/amd64/rtld_machdep.h
--- a/libexec/rtld-elf/amd64/rtld_machdep.h
+++ b/libexec/rtld-elf/amd64/rtld_machdep.h
@@ -69,9 +69,6 @@
void *__tls_get_addr(tls_index *ti) __exported;
-#define RTLD_DEFAULT_STACK_PF_EXEC PF_X
-#define RTLD_DEFAULT_STACK_EXEC PROT_EXEC
-
#define md_abi_variant_hook(x)
size_t calculate_first_tls_offset(size_t size, size_t align, size_t offset);
diff --git a/libexec/rtld-elf/arm/rtld_machdep.h b/libexec/rtld-elf/arm/rtld_machdep.h
--- a/libexec/rtld-elf/arm/rtld_machdep.h
+++ b/libexec/rtld-elf/arm/rtld_machdep.h
@@ -73,9 +73,6 @@
extern void *__tls_get_addr(tls_index *ti);
-#define RTLD_DEFAULT_STACK_PF_EXEC PF_X
-#define RTLD_DEFAULT_STACK_EXEC PROT_EXEC
-
#define md_abi_variant_hook(x)
#endif
diff --git a/libexec/rtld-elf/i386/rtld_machdep.h b/libexec/rtld-elf/i386/rtld_machdep.h
--- a/libexec/rtld-elf/i386/rtld_machdep.h
+++ b/libexec/rtld-elf/i386/rtld_machdep.h
@@ -70,9 +70,6 @@
void *___tls_get_addr(tls_index *ti) __attribute__((__regparm__(1))) __exported;
void *__tls_get_addr(tls_index *ti) __exported;
-#define RTLD_DEFAULT_STACK_PF_EXEC PF_X
-#define RTLD_DEFAULT_STACK_EXEC PROT_EXEC
-
#define md_abi_variant_hook(x)
size_t calculate_first_tls_offset(size_t size, size_t align, size_t offset);
diff --git a/libexec/rtld-elf/map_object.c b/libexec/rtld-elf/map_object.c
--- a/libexec/rtld-elf/map_object.c
+++ b/libexec/rtld-elf/map_object.c
@@ -122,7 +122,7 @@
note_map = NULL;
note_map_len = 0;
segs = alloca(sizeof(segs[0]) * hdr->e_phnum);
- stack_flags = RTLD_DEFAULT_STACK_PF_EXEC | PF_R | PF_W;
+ stack_flags = PF_X | PF_R | PF_W;
text_end = 0;
while (phdr < phlimit) {
switch (phdr->p_type) {
diff --git a/libexec/rtld-elf/powerpc/rtld_machdep.h b/libexec/rtld-elf/powerpc/rtld_machdep.h
--- a/libexec/rtld-elf/powerpc/rtld_machdep.h
+++ b/libexec/rtld-elf/powerpc/rtld_machdep.h
@@ -89,9 +89,6 @@
extern void *__tls_get_addr(tls_index* ti);
-#define RTLD_DEFAULT_STACK_PF_EXEC PF_X
-#define RTLD_DEFAULT_STACK_EXEC PROT_EXEC
-
extern void powerpc_abi_variant_hook(Elf_Auxinfo **);
#define md_abi_variant_hook(x) powerpc_abi_variant_hook(x)
diff --git a/libexec/rtld-elf/powerpc64/rtld_machdep.h b/libexec/rtld-elf/powerpc64/rtld_machdep.h
--- a/libexec/rtld-elf/powerpc64/rtld_machdep.h
+++ b/libexec/rtld-elf/powerpc64/rtld_machdep.h
@@ -81,9 +81,6 @@
extern void *__tls_get_addr(tls_index* ti);
-#define RTLD_DEFAULT_STACK_PF_EXEC PF_X
-#define RTLD_DEFAULT_STACK_EXEC PROT_EXEC
-
extern void powerpc64_abi_variant_hook(Elf_Auxinfo **);
#define md_abi_variant_hook(x) powerpc64_abi_variant_hook(x)
diff --git a/libexec/rtld-elf/riscv/rtld_machdep.h b/libexec/rtld-elf/riscv/rtld_machdep.h
--- a/libexec/rtld-elf/riscv/rtld_machdep.h
+++ b/libexec/rtld-elf/riscv/rtld_machdep.h
@@ -99,9 +99,6 @@
extern void *__tls_get_addr(tls_index* ti);
-#define RTLD_DEFAULT_STACK_PF_EXEC PF_X
-#define RTLD_DEFAULT_STACK_EXEC PROT_EXEC
-
#define md_abi_variant_hook(x)
#endif
diff --git a/libexec/rtld-elf/rtld.c b/libexec/rtld-elf/rtld.c
--- a/libexec/rtld-elf/rtld.c
+++ b/libexec/rtld-elf/rtld.c
@@ -269,7 +269,7 @@
size_t *pagesizes;
size_t page_size;
-static int stack_prot = PROT_READ | PROT_WRITE | RTLD_DEFAULT_STACK_EXEC;
+static int stack_prot = PROT_READ | PROT_WRITE | PROT_EXEC;
static int max_stack_flags;
/*

File Metadata

Mime Type
text/plain
Expires
Sun, Apr 26, 5:15 AM (5 h, 16 m)
Storage Engine
blob
Storage Format
Raw Data
Storage Handle
32135722
Default Alt Text
D37904.id114644.diff (3 KB)

Event Timeline