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