aboutsummaryrefslogtreecommitdiff
path: root/sys/linux/src/mmap.c
blob: 21d927b7823cbb20c8a7d90601e241c0e810682a (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
#include "internal.h"

int
sys·mmap(void *start, uintptr len, int protect, int flags, int fd, intptr off, void **buf)
{
    long ret;
    if(len >= PTRDIFF_MAX)
        return sys·ErrorNoMemory;

    ret = syscall(·MMap, start, len, protect, flags, fd, off);
    if(ret < 0){
        *buf = nil;
        return -ret;
    }
    *buf = (void*)ret;
    return 0;
}