fcntl.h: add some linux-specific F_ macros
[musl] / include / fcntl.h
index b06c276..d0c38be 100644 (file)
@@ -37,7 +37,11 @@ int openat(int, const char *, int, ...);
 int posix_fadvise(int, off_t, off_t, int);
 int posix_fallocate(int, off_t, off_t);
 
-#define O_ACCMODE (O_RDWR|O_SEARCH)
+#define O_SEARCH  010000000
+#define O_EXEC    010000000
+#define O_PATH    010000000
+
+#define O_ACCMODE (03|O_SEARCH)
 #define O_RDONLY  00
 #define O_WRONLY  01
 #define O_RDWR    02
@@ -104,6 +108,23 @@ int posix_fallocate(int, off_t, off_t);
 #define F_TLOCK 2
 #define F_TEST  3
 
+#define F_LINUX_SPECIFIC_BASE 1024
+#define F_SETLEASE      (F_LINUX_SPECIFIC_BASE + 0)
+#define F_GETLEASE      (F_LINUX_SPECIFIC_BASE + 1)
+#define F_NOTIFY        (F_LINUX_SPECIFIC_BASE + 2)
+#define F_CANCELLK      (F_LINUX_SPECIFIC_BASE + 5)
+#define F_DUPFD_CLOEXEC (F_LINUX_SPECIFIC_BASE + 6)
+#define F_SETPIPE_SZ    (F_LINUX_SPECIFIC_BASE + 7)
+#define F_GETPIPE_SZ    (F_LINUX_SPECIFIC_BASE + 8)
+
+#define DN_ACCESS       0x00000001
+#define DN_MODIFY       0x00000002
+#define DN_CREATE       0x00000004
+#define DN_DELETE       0x00000008
+#define DN_RENAME       0x00000010
+#define DN_ATTRIB       0x00000020
+#define DN_MULTISHOT    0x80000000
+
 int lockf(int, int, off_t);
 #endif