api: fix unistd.h
[libc-test] / src / api / sys_mman.c
1 #include <sys/mman.h>
2 #define T(t) (t*)0;
3 #define F(t,n) {t *y = &x.n;}
4 #define C(n) switch(n){case n:;}
5 static void f()
6 {
7 T(mode_t)
8 T(off_t)
9 T(size_t)
10 C(PROT_EXEC)
11 C(PROT_NONE)
12 C(PROT_READ)
13 C(PROT_WRITE)
14 C(MAP_FIXED)
15 C(MAP_PRIVATE)
16 C(MAP_SHARED)
17 #ifdef _XOPEN_SOURCE
18 C(MS_ASYNC)
19 C(MS_INVALIDATE)
20 C(MS_SYNC)
21 #endif
22 C(MCL_CURRENT)
23 C(MCL_FUTURE)
24 {void *x = MAP_FAILED;}
25 C(POSIX_MADV_DONTNEED)
26 C(POSIX_MADV_NORMAL)
27 C(POSIX_MADV_RANDOM)
28 C(POSIX_MADV_SEQUENTIAL)
29 C(POSIX_MADV_WILLNEED)
30 //C(POSIX_TYPED_MEM_ALLOCATE)
31 //C(POSIX_TYPED_MEM_ALLOCATE_CONTIG)
32 //C(POSIX_TYPED_MEM_MAP_ALLOCATABLE)
33 //{
34 //struct posix_typed_mem_info x;
35 //F(size_t,posix_tmi_length)
36 //}
37 {int(*p)(const void*,size_t) = mlock;}
38 {int(*p)(int) = mlockall;}
39 {void*(*p)(void*,size_t,int,int,int,off_t) = mmap;}
40 {int(*p)(void*,size_t,int) = mprotect;}
41 #ifdef _XOPEN_SOURCE
42 {int(*p)(void*,size_t,int) = msync;}
43 #endif
44 {int(*p)(const void*,size_t) = munlock;}
45 {int(*p)(void) = munlockall;}
46 {int(*p)(void*,size_t) = munmap;}
47 {int(*p)(void*,size_t,int) = posix_madvise;}
48 //int(*p)(const void*restrict,size_t,off_t*restrict,size_t*restrict,int*restrict) = posix_mem_offset;
49 //int(*p)(int,struct posix_typed_mem_info*) = posix_typed_mem_get_info;
50 //int(*p)(const char*,int,int) = posix_typed_mem_open;
51 {int(*p)(const char*,int,mode_t) = shm_open;}
52 {int(*p)(const char*) = shm_unlink;}
53 }