mirror of
https://github.com/RGBCube/serenity
synced 2025-05-15 05:44:58 +00:00

I added a dead-simple malloc that only allows allocations < 4096 bytes. It just forwards the request to mmap() every time. I also added simplified versions of opendir() and readdir().
24 lines
322 B
C++
24 lines
322 B
C++
#include "stdlib.h"
|
|
#include "mman.h"
|
|
|
|
extern "C" {
|
|
|
|
void* malloc(size_t size)
|
|
{
|
|
if (size > 4096) {
|
|
volatile char* crashme = (char*)0xc007d00d;
|
|
*crashme = 0;
|
|
}
|
|
void* ptr = mmap(nullptr, 4096);
|
|
return ptr;
|
|
}
|
|
|
|
void free(void* ptr)
|
|
{
|
|
if (!ptr)
|
|
return;
|
|
munmap(ptr, 4096);
|
|
}
|
|
|
|
}
|
|
|