mirror of
https://github.com/RGBCube/serenity
synced 2025-05-14 09:14:58 +00:00
LibC: Randomize malloc() block addresses on x86_64
We have a lot of address space here, let's use it. :^)
This commit is contained in:
parent
bdaaff70cb
commit
1fcb1ec367
1 changed files with 5 additions and 1 deletions
|
@ -158,7 +158,11 @@ extern "C" {
|
|||
|
||||
static void* os_alloc(size_t size, const char* name)
|
||||
{
|
||||
auto* ptr = serenity_mmap(nullptr, size, PROT_READ | PROT_WRITE, MAP_ANONYMOUS | MAP_PRIVATE | MAP_PURGEABLE, 0, 0, ChunkedBlock::block_size, name);
|
||||
int flags = MAP_ANONYMOUS | MAP_PRIVATE | MAP_PURGEABLE;
|
||||
#if ARCH(X86_64)
|
||||
flags |= MAP_RANDOMIZED;
|
||||
#endif
|
||||
auto* ptr = serenity_mmap(nullptr, size, PROT_READ | PROT_WRITE, flags, 0, 0, ChunkedBlock::block_size, name);
|
||||
VERIFY(ptr != MAP_FAILED);
|
||||
return ptr;
|
||||
}
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue