bug-hurd
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[PATCH] exec: redzone page zero before loading anything


From: Justus Winter
Subject: [PATCH] exec: redzone page zero before loading anything
Date: Mon, 22 Sep 2014 18:30:24 +0200

This prevents load_section from mapping any sections to page zero.

* exec/exec.c (do_exec): Redzone page zero before loading anything.
---
 exec/exec.c | 10 ++++++++++
 1 file changed, 10 insertions(+)

diff --git a/exec/exec.c b/exec/exec.c
index 2fc1e44..0ecf2d3 100644
--- a/exec/exec.c
+++ b/exec/exec.c
@@ -1116,6 +1116,16 @@ do_exec (file_t file,
        mach_port_destroy (oldtask, destroynames[i]);
     }
 
+  /* Map page zero redzoned.  */
+  {
+    vm_address_t addr = 0;
+    e.error = vm_map (newtask,
+                     &addr, vm_page_size, 0, 0, MACH_PORT_NULL, 0, 1,
+                     VM_PROT_NONE, VM_PROT_NONE, VM_INHERIT_COPY);
+    if (e.error)
+      goto out;
+  }
+
 /* XXX this should be below
    it is here to work around a vm_map kernel bug. */
   if (interp.file != MACH_PORT_NULL)
-- 
2.1.0




reply via email to

[Prev in Thread] Current Thread [Next in Thread]