]> go.fuhry.dev Git - fsnotify.git/commitdiff
inotify: use syscall constants directly
authorNathan Youngman <git@nathany.com>
Sun, 22 Jun 2014 03:02:54 +0000 (21:02 -0600)
committerNathan Youngman <git@nathany.com>
Sun, 22 Jun 2014 03:02:54 +0000 (21:02 -0600)
fsnotify_linux.go

index b98f81ed4c6d5c8133dea48165e65ef02c102c84..72b1ee1dd26f9736e63370643c846977d5e0651b 100644 (file)
@@ -15,60 +15,26 @@ import (
 )
 
 const (
-       // Options for inotify_init() are not exported
-       // sys_IN_CLOEXEC    uint32 = syscall.IN_CLOEXEC
-       // sys_IN_NONBLOCK   uint32 = syscall.IN_NONBLOCK
-
-       // Options for AddWatch
-       sys_IN_DONT_FOLLOW uint32 = syscall.IN_DONT_FOLLOW
-       sys_IN_ONESHOT     uint32 = syscall.IN_ONESHOT
-       sys_IN_ONLYDIR     uint32 = syscall.IN_ONLYDIR
-
-       // The "sys_IN_MASK_ADD" option is not exported, as AddWatch
-       // adds it automatically, if there is already a watch for the given path
-       // sys_IN_MASK_ADD      uint32 = syscall.IN_MASK_ADD
-
-       // Events
-       sys_IN_ACCESS        uint32 = syscall.IN_ACCESS
-       sys_IN_ALL_EVENTS    uint32 = syscall.IN_ALL_EVENTS
-       sys_IN_ATTRIB        uint32 = syscall.IN_ATTRIB
-       sys_IN_CLOSE         uint32 = syscall.IN_CLOSE
-       sys_IN_CLOSE_NOWRITE uint32 = syscall.IN_CLOSE_NOWRITE
-       sys_IN_CLOSE_WRITE   uint32 = syscall.IN_CLOSE_WRITE
-       sys_IN_CREATE        uint32 = syscall.IN_CREATE
-       sys_IN_DELETE        uint32 = syscall.IN_DELETE
-       sys_IN_DELETE_SELF   uint32 = syscall.IN_DELETE_SELF
-       sys_IN_MODIFY        uint32 = syscall.IN_MODIFY
-       sys_IN_MOVE          uint32 = syscall.IN_MOVE
-       sys_IN_MOVED_FROM    uint32 = syscall.IN_MOVED_FROM
-       sys_IN_MOVED_TO      uint32 = syscall.IN_MOVED_TO
-       sys_IN_MOVE_SELF     uint32 = syscall.IN_MOVE_SELF
-       sys_IN_OPEN          uint32 = syscall.IN_OPEN
-
-       sys_AGNOSTIC_EVENTS = sys_IN_MOVED_TO | sys_IN_MOVED_FROM | sys_IN_CREATE | sys_IN_ATTRIB | sys_IN_MODIFY | sys_IN_MOVE_SELF | sys_IN_DELETE | sys_IN_DELETE_SELF
-
-       // Special events
-       sys_IN_ISDIR      uint32 = syscall.IN_ISDIR
-       sys_IN_IGNORED    uint32 = syscall.IN_IGNORED
-       sys_IN_Q_OVERFLOW uint32 = syscall.IN_Q_OVERFLOW
-       sys_IN_UNMOUNT    uint32 = syscall.IN_UNMOUNT
+       sys_AGNOSTIC_EVENTS = syscall.IN_MOVED_TO | syscall.IN_MOVED_FROM |
+               syscall.IN_CREATE | syscall.IN_ATTRIB | syscall.IN_MODIFY |
+               syscall.IN_MOVE_SELF | syscall.IN_DELETE | syscall.IN_DELETE_SELF
 )
 
 func newEvent(name string, mask uint32) *Event {
        e := &Event{Name: name}
-       if mask&sys_IN_CREATE == sys_IN_CREATE || mask&sys_IN_MOVED_TO == sys_IN_MOVED_TO {
+       if mask&syscall.IN_CREATE == syscall.IN_CREATE || mask&syscall.IN_MOVED_TO == syscall.IN_MOVED_TO {
                e.Op |= Create
        }
-       if mask&sys_IN_DELETE_SELF == sys_IN_DELETE_SELF || mask&sys_IN_DELETE == sys_IN_DELETE {
+       if mask&syscall.IN_DELETE_SELF == syscall.IN_DELETE_SELF || mask&syscall.IN_DELETE == syscall.IN_DELETE {
                e.Op |= Remove
        }
-       if mask&sys_IN_MODIFY == sys_IN_MODIFY || mask&sys_IN_ATTRIB == sys_IN_ATTRIB {
+       if mask&syscall.IN_MODIFY == syscall.IN_MODIFY || mask&syscall.IN_ATTRIB == syscall.IN_ATTRIB {
                e.Op |= Write
        }
-       if mask&sys_IN_MOVE_SELF == sys_IN_MOVE_SELF || mask&sys_IN_MOVED_FROM == sys_IN_MOVED_FROM {
+       if mask&syscall.IN_MOVE_SELF == syscall.IN_MOVE_SELF || mask&syscall.IN_MOVED_FROM == syscall.IN_MOVED_FROM {
                e.Op |= Rename
        }
-       if mask&sys_IN_ATTRIB == sys_IN_ATTRIB {
+       if mask&syscall.IN_ATTRIB == syscall.IN_ATTRIB {
                e.Op |= Chmod
        }
        return e
@@ -257,7 +223,7 @@ func (w *Watcher) readEvents() {
 // against files that do not exist.
 func (e *Event) ignoreLinux(mask uint32) bool {
        // Ignore anything the inotify API says to ignore
-       if mask&sys_IN_IGNORED == sys_IN_IGNORED {
+       if mask&syscall.IN_IGNORED == syscall.IN_IGNORED {
                return true
        }