550152fd17ce843a50cce0104bef62c08b2fa8c2
[musl] / include / bits / fcntl.h
1 #define O_ACCMODE 03
2 #define O_RDONLY  00
3 #define O_WRONLY  01
4 #define O_RDWR    02
5
6 #define O_CREAT        0100
7 #define O_EXCL         0200
8 #define O_NOCTTY       0400
9 #define O_TRUNC       01000
10 #define O_APPEND      02000
11 #define O_NONBLOCK    04000
12 #define O_SYNC       010000
13 #define O_DIRECTORY 0200000
14 #define O_NOFOLLOW  0400000
15 #define O_CLOEXEC  02000000
16
17 #ifdef _GNU_SOURCE
18 #define O_ASYNC      020000
19 #define O_DIRECT     040000
20 #define O_NOATIME  01000000
21 #define F_DUPFD_CLOEXEC 1030
22 #define FAPPENT O_APPEND
23 #define FFSYNC O_FSYNC
24 #define FASYNC O_ASYNC
25 #define FNONBLOCK O_NONBLOCK
26 #define FNDELAY O_NDELAY
27 #endif
28
29 #define F_DUPFD  0
30 #define F_GETFD  1
31 #define F_SETFD  2
32 #define F_GETFL  3
33 #define F_SETFL  4
34
35 #define F_SETOWN 8
36 #define F_GETOWN 9
37
38 #define F_GETLK 12
39 #define F_SETLK 13
40 #define F_SETLKW 14
41
42 #define FD_CLOEXEC 1
43
44 #define F_RDLCK 0
45 #define F_WRLCK 1
46 #define F_UNLCK 2
47
48 #define AT_FDCWD (-100)
49 #define AT_SYMLINK_NOFOLLOW 0x100
50 #define AT_REMOVEDIR 0x200
51 #define AT_SYMLINK_FOLLOW 0x400
52 #define AT_EACCESS 0x200
53
54 #define POSIX_FADV_NORMAL     0
55 #define POSIX_FADV_RANDOM     1
56 #define POSIX_FADV_SEQUENTIAL 2
57 #define POSIX_FADV_WILLNEED   3
58 #define POSIX_FADV_DONTNEED   4
59 #define POSIX_FADV_NOREUSE    5