921a19ca8d1401df5c512f39fe7a1c376980caa0
[musl] / include / sys / inotify.h
1 #ifndef _SYS_INOTIFY_H
2 #define _SYS_INOTIFY_H
3
4 #ifdef __cplusplus
5 extern "C" {
6 #endif
7
8 #include <stdint.h>
9
10 struct inotify_event {
11         int wd;
12         uint32_t mask, cookie, len;
13         char name[];
14 };
15
16 #define IN_CLOEXEC 020000000
17 #define IN_NONBLOCK 04000
18
19 #define IN_ACCESS        0x00000001
20 #define IN_MODIFY        0x00000002
21 #define IN_ATTRIB        0x00000004
22 #define IN_CLOSE_WRITE   0x00000008
23 #define IN_CLOSE_NOWRITE 0x00000010
24 #define IN_CLOSE         (IN_CLOSE_WRITE | IN_CLOSE_NOWRITE)
25 #define IN_OPEN          0x00000020
26 #define IN_MOVED_FROM    0x00000040
27 #define IN_MOVED_TO      0x00000080
28 #define IN_MOVE          (IN_MOVED_FROM | IN_MOVED_TO)
29 #define IN_CREATE        0x00000100
30 #define IN_DELETE        0x00000200
31 #define IN_DELETE_SELF   0x00000400
32 #define IN_MOVE_SELF     0x00000800
33 #define IN_ALL_EVENTS    0x00000fff
34
35 #define IN_UNMOUNT       0x00002000
36 #define IN_Q_OVERFLOW    0x00004000
37 #define IN_IGNORED       0x00008000
38
39 #define IN_ONLYDIR       0x01000000
40 #define IN_DONT_FOLLOW   0x02000000
41 #define IN_MASK_ADD      0x20000000
42
43 #define IN_ISDIR         0x40000000
44 #define IN_ONESHOT       0x80000000
45
46 int inotify_init(void);
47 int inotify_init1(int);
48 int inotify_add_watch(int, const char *, uint32_t);
49 int inotify_rm_watch(int, uint32_t);
50
51 #ifdef __cplusplus
52 }
53 #endif
54
55 #endif