_GNU_SOURCE is supposed to imply _LARGEFILE64_SOURCE
[musl] / include / sys / mman.h
1 #ifndef _SYS_MMAN_H
2 #define _SYS_MMAN_H
3 #ifdef __cplusplus
4 extern "C" {
5 #endif
6
7 #define __NEED_mode_t
8 #define __NEED_size_t
9 #define __NEED_off_t
10
11 #include <bits/alltypes.h>
12
13 #include <bits/mman.h>
14
15 void *mmap (void *, size_t, int, int, int, off_t);
16 int munmap (void *, size_t);
17
18 int mprotect (void *, size_t, int);
19 int msync (void *, size_t, int);
20
21 int posix_madvise (void *, size_t, int);
22
23 int mlock (const void *, size_t);
24 int munlock (const void *, size_t);
25 int mlockall (int);
26 int munlockall (void);
27
28 #ifdef _GNU_SOURCE
29 void *mremap (void *, size_t, size_t, int, ...);
30 #endif
31
32 #if defined(_GNU_SOURCE) || defined(_BSD_SOURCE)
33 int madvise (void *, size_t, int);
34 #endif
35
36 int shm_open (const char *, int, mode_t);
37 int shm_unlink (const char *);
38
39 #if defined(_LARGEFILE64_SOURCE) || defined(_GNU_SOURCE)
40 #define mmap64 mmap
41 #define off64_t off_t
42 #endif
43
44 #ifdef __cplusplus
45 }
46 #endif
47 #endif