Luna/libc/src/sys/mman.cpp

23 lines
543 B
C++
Raw Normal View History

#include <bits/errno-return.h>
#include <bits/mmap.h>
#include <luna/Heap.h>
#include <sys/mman.h>
#include <sys/syscall.h>
#include <unistd.h>
extern "C"
{
void* mmap(void* addr, size_t len, int prot, int flags, int fd, off_t offset)
{
const mmap_params params { addr, len, prot, flags, fd, offset };
long rc = syscall(SYS_mmap, &params);
__errno_return(rc, void*);
}
int munmap(void* addr, size_t len)
{
long rc = syscall(SYS_munmap, addr, len);
__errno_return(rc, int);
}
}