@@ -3,44 +3,81 @@ package fanotify
33import "golang.org/x/sys/unix"
44
55const (
6- // FileOrDirAccessedEvent create an event when a file or directory is accessed
7- FileOrDirAccessedEvent uint64 = unix .FAN_ACCESS
8- // FileModifiedEvent create an event when a file is modified
9- FileModifiedEvent uint64 = unix .FAN_MODIFY
10- // FileClosedEvent create an event when a file is closed
11- FileClosedEvent uint64 = unix .FAN_CLOSE_WRITE | unix .FAN_CLOSE_NOWRITE
12- // FileOrDirOpenedEvent create an event when a file or directory is opened
13- FileOrDirOpenedEvent uint64 = unix .FAN_OPEN
14- // FileOpenedForExecEvent create an event when a file is opened with the intent to be executed.
15- FileOpenedForExecEvent uint64 = unix .FAN_OPEN_EXEC
16- // FileOrDirMetadataChangedEvent create an event when a file or directory attributes have changed.
17- FileOrDirMetadataChangedEvent uint64 = unix .FAN_ATTRIB
18- // DirectoryEvent create an event when directory is opened, read or closed.
19- DirectoryEvent uint64 = unix .FAN_ONDIR
20- // FileCreatedInMarkedParentEvent create event when a file is created under a marked parent directory.
21- FileCreatedInMarkedParentEvent uint64 = unix .FAN_CREATE | unix .FAN_EVENT_ON_CHILD
22- // DirectoryCreatedInMarkedParentEvent create event when a directory is created under a marked parent directory.
23- DirectoryCreatedInMarkedParentEvent uint64 = unix .FAN_ONDIR | unix .FAN_CREATE | unix .FAN_EVENT_ON_CHILD
24- // FileDeletedInMarkedParentEvent create event when a file is deleted under a marked parent directory.
25- FileDeletedInMarkedParentEvent uint64 = unix .FAN_DELETE | unix .FAN_EVENT_ON_CHILD
26- // DirectoryDeletedInMarkedParentEvent create event when a directory is deleted under a marked parent directory.
27- DirectoryDeletedInMarkedParentEvent uint64 = unix .FAN_ONDIR | unix .FAN_DELETE | unix .FAN_EVENT_ON_CHILD
28- // MarkedFileDeletedEvent create event when a marked file is deleted.
29- MarkedFileDeletedEvent uint64 = unix .FAN_DELETE_SELF
30- // MarkedDirectoryDeletedEvent create an event when a marked directory is deleted.
31- MarkedDirectoryDeletedEvent uint64 = unix .FAN_ONDIR | unix .FAN_DELETE_SELF
32- // FileMovedFromMarkedParentEvent create an event when file has been moved from a marked parent directory.
33- FileMovedFromMarkedParentEvent uint64 = unix .FAN_MOVED_FROM | unix .FAN_EVENT_ON_CHILD
34- // DirMovedFromMarkedParentEvent create an event when a directory has been moved from a marked parent directory.
35- DirMovedFromMarkedParentEvent uint64 = unix .FAN_ONDIR | unix .FAN_MOVED_FROM | unix .FAN_EVENT_ON_CHILD
36- // FileMovedToMarkedParentEvent create an event when file has been moved to a marked parent directory.
37- FileMovedToMarkedParentEvent uint64 = unix .FAN_MOVED_TO | unix .FAN_EVENT_ON_CHILD
38- // DirMovedToMarkedParentEvent create an event when a directory has been moved to a marked parent directory.
39- DirMovedToMarkedParentEvent uint64 = unix .FAN_ONDIR | unix .FAN_MOVED_TO | unix .FAN_EVENT_ON_CHILD
40- // MarkedFileOrDirectoryHasMovedEvent create an event when a marked file or directory has moved.
41- MarkedFileOrDirectoryHasMovedEvent uint64 = unix .FAN_MOVE_SELF
42- // QueueOverflowedEvent create an event when the kernel event queue has overflowed.
43- QueueOverflowedEvent uint64 = unix .FAN_Q_OVERFLOW
44- // FileOrDirectoryMovedEvent create an event when a file or directory has moved.
45- FileOrDirectoryMovedEvent uint64 = FileMovedFromMarkedParentEvent | FileMovedToMarkedParentEvent | DirMovedFromMarkedParentEvent | DirMovedToMarkedParentEvent
6+ // FileAccessed event when a file is accessed
7+ FileAccessed Action = unix .FAN_ACCESS
8+
9+ // FileOrDirectoryAccessed event when a file or directory is accessed
10+ FileOrDirectoryAccessed Action = unix .FAN_ACCESS | unix .FAN_ONDIR
11+
12+ // FileModified event when a file is modified
13+ FileModified Action = unix .FAN_MODIFY
14+
15+ // FileClosed event when a file is closed
16+ FileClosed Action = unix .FAN_CLOSE_WRITE | unix .FAN_CLOSE_NOWRITE
17+
18+ // FileOpened event when a file is opened
19+ FileOpened Action = unix .FAN_OPEN
20+
21+ // FileOrDirectoryOpened event when a file or directory is opened
22+ FileOrDirectoryOpened Action = unix .FAN_OPEN | unix .FAN_ONDIR
23+
24+ // FileOpenedForExec event when a file is opened with the intent to be executed.
25+ // Requires Linux kernel 5.0 or later
26+ FileOpenedForExec Action = unix .FAN_OPEN_EXEC
27+
28+ // FileAttribChanged event when a file attribute has changed
29+ // Requires Linux kernel 5.1 or later (requires FID)
30+ FileAttribChanged Action = unix .FAN_ATTRIB
31+
32+ // FileOrDirAttribChanged event when a file or directory attribute has changed
33+ // Requires Linux kernel 5.1 or later (requires FID)
34+ FileOrDirAttribChanged Action = unix .FAN_ATTRIB | unix .FAN_ONDIR
35+
36+ // FileCreated event when file a has been created
37+ // Requires Linux kernel 5.1 or later (requires FID)
38+ FileCreated Action = unix .FAN_CREATE
39+
40+ // FileOrDirCreated event when a file or directory has been created
41+ // Requires Linux kernel 5.1 or later (requires FID)
42+ FileOrDirCreated Action = unix .FAN_CREATE | unix .FAN_ONDIR
43+
44+ // FileDeleted event when file a has been deleted
45+ // Requires Linux kernel 5.1 or later (requires FID)
46+ FileDeleted Action = unix .FAN_DELETE
47+
48+ // FileOrDirDeleted event when a file or directory has been deleted
49+ // Requires Linux kernel 5.1 or later (requires FID)
50+ FileOrDirDeleted Action = unix .FAN_DELETE | unix .FAN_ONDIR
51+
52+ // WatchedFileDeleted event when a watched file has been deleted
53+ // Requires Linux kernel 5.1 or later (requires FID)
54+ WatchedFileDeleted Action = unix .FAN_DELETE_SELF
55+
56+ // WatchedFileOrDirDeleted event when a watched file or directory has been deleted
57+ // Requires Linux kernel 5.1 or later (requires FID)
58+ WatchedFileOrDirDeleted Action = unix .FAN_DELETE_SELF | unix .FAN_ONDIR
59+
60+ // FileMovedFrom event when a file has been moved from the watched directory
61+ // Requires Linux kernel 5.1 or later (requires FID)
62+ FileMovedFrom Action = unix .FAN_MOVED_FROM
63+
64+ // FileOrDirMovedFrom event when a file or directory has been moved from the watched directory
65+ // Requires Linux kernel 5.1 or later (requires FID)
66+ FileOrDirMovedFrom Action = unix .FAN_MOVED_FROM | unix .FAN_ONDIR
67+
68+ // FileMovedTo event when a file has been moved to the watched directory
69+ // Requires Linux kernel 5.1 or later (requires FID)
70+ FileMovedTo Action = unix .FAN_MOVED_TO
71+
72+ // FileOrDirMovedTo event when a file or directory has been moved to the watched directory
73+ // Requires Linux kernel 5.1 or later (requires FID)
74+ FileOrDirMovedTo Action = unix .FAN_MOVED_TO | unix .FAN_ONDIR
75+
76+ // WatchedFileMoved event when a watched file has moved
77+ // Requires Linux kernel 5.1 or later (requires FID)
78+ WatchedFileMoved Action = unix .FAN_MOVE_SELF
79+
80+ // WatchedFileOrDirMoved event when a watched file or directory has moved
81+ // Requires Linux kernel 5.1 or later (requires FID)
82+ WatchedFileOrDirMoved Action = unix .FAN_MOVE_SELF | unix .FAN_ONDIR
4683)
0 commit comments