mailing list of musl libc
 help / color / mirror / code / Atom feed
* [RFC PATCH 3/7] disable check for buggy brk implementations when SafeStack is enabled
@ 2016-09-27 22:36 LeMay, Michael
  0 siblings, 0 replies; only message in thread
From: LeMay, Michael @ 2016-09-27 22:36 UTC (permalink / raw)
  To: musl

The check relies on comparing the addresses of stack-allocated objects
to addresses returned by the brk syscall.  Segmentation-hardened
SafeStack moves the allocations to heap locations, breaking the check.
This patch disables the check when segmentation-hardened SafeStack is
enabled.

Signed-off-by: Michael LeMay <michael.lemay@intel.com>
---
  src/malloc/expand_heap.c | 2 ++
  1 file changed, 2 insertions(+)

diff --git a/src/malloc/expand_heap.c b/src/malloc/expand_heap.c
index d8c0be7..ace2b6a 100644
--- a/src/malloc/expand_heap.c
+++ b/src/malloc/expand_heap.c
@@ -13,6 +13,7 @@

  static int traverses_stack_p(uintptr_t old, uintptr_t new)
  {
+#if !SAFE_STACK
      const uintptr_t len = 8<<20;
      uintptr_t a, b;

@@ -23,6 +24,7 @@ static int traverses_stack_p(uintptr_t old, uintptr_t new)
      b = (uintptr_t)&b;
      a = b > len ? b-len : 0;
      if (new>a && old<b) return 1;
+#endif

      return 0;
  }
-- 
2.7.4




^ permalink raw reply	[flat|nested] only message in thread

only message in thread, other threads:[~2016-09-27 22:36 UTC | newest]

Thread overview: (only message) (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2016-09-27 22:36 [RFC PATCH 3/7] disable check for buggy brk implementations when SafeStack is enabled LeMay, Michael

Code repositories for project(s) associated with this public inbox

	https://git.vuxu.org/mirror/musl/

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).