From 9f3bd49737df7fedbf89ed90570ac1a965814c2b Mon Sep 17 00:00:00 2001 From: Pawel Dziepak Date: Tue, 16 Apr 2013 02:44:47 +0200 Subject: [PATCH] runtime_loader: explicitly randomize rld_heap and _rld_debug_ positions --- src/system/runtime_loader/elf.cpp | 2 +- src/system/runtime_loader/heap.cpp | 4 ++-- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/src/system/runtime_loader/elf.cpp b/src/system/runtime_loader/elf.cpp index 9415d73b55..edaf863b54 100644 --- a/src/system/runtime_loader/elf.cpp +++ b/src/system/runtime_loader/elf.cpp @@ -1031,7 +1031,7 @@ rldelf_init(void) runtime_loader_debug_area *area; area_id areaID = _kern_create_area(RUNTIME_LOADER_DEBUG_AREA_NAME, - (void **)&area, B_ANY_ADDRESS, size, B_NO_LOCK, + (void **)&area, B_RANDOMIZED_ANY_ADDRESS, size, B_NO_LOCK, B_READ_AREA | B_WRITE_AREA); if (areaID < B_OK) { FATAL("Failed to create debug area.\n"); diff --git a/src/system/runtime_loader/heap.cpp b/src/system/runtime_loader/heap.cpp index 02dc286b02..8cd57abf54 100644 --- a/src/system/runtime_loader/heap.cpp +++ b/src/system/runtime_loader/heap.cpp @@ -178,8 +178,8 @@ static status_t add_area(size_t size) { void *base; - area_id area = _kern_create_area("rld heap", &base, B_ANY_ADDRESS, size, - B_NO_LOCK, B_READ_AREA | B_WRITE_AREA); + area_id area = _kern_create_area("rld heap", &base, + B_RANDOMIZED_ANY_ADDRESS, size, B_NO_LOCK, B_READ_AREA | B_WRITE_AREA); if (area < B_OK) return area;