Files
semi-libc/src/mman/mprotect.c
T
Jens GustedtandRich Felker df7d0dfb9c use weak symbols for the POSIX functions that will be used by C threads
The intent of this is to avoid name space pollution of the C threads
implementation.

This has two sides to it. First we have to provide symbols that wouldn't
pollute the name space for the C threads implementation. Second we have
to clean up some internal uses of POSIX functions such that they don't
implicitly drag in such symbols.
2014-09-06 18:11:24 -04:00

14 lines
325 B
C

#include <sys/mman.h>
#include "libc.h"
#include "syscall.h"
int __mprotect(void *addr, size_t len, int prot)
{
size_t start, end;
start = (size_t)addr & -PAGE_SIZE;
end = (size_t)((char *)addr + len + PAGE_SIZE-1) & -PAGE_SIZE;
return syscall(SYS_mprotect, start, end-start, prot);
}
weak_alias(__mprotect, mprotect);