summaryrefslogtreecommitdiff
path: root/src/inotify/bits.go
diff options
context:
space:
mode:
Diffstat (limited to 'src/inotify/bits.go')
-rw-r--r--src/inotify/bits.go120
1 files changed, 0 insertions, 120 deletions
diff --git a/src/inotify/bits.go b/src/inotify/bits.go
deleted file mode 100644
index 18d8566..0000000
--- a/src/inotify/bits.go
+++ /dev/null
@@ -1,120 +0,0 @@
-// Copyright (C) 2015 Luke Shumaker
-//
-// Many of the comments in this file are taken from the GNU libc
-// header file <sys/inotify.h>
-//
-// Copyright (C) 2005-2015 Free Software Foundation, Inc.
-//
-// The GNU C Library is free software; you can redistribute it and/or
-// modify it under the terms of the GNU Lesser General Public
-// License as published by the Free Software Foundation; either
-// version 2.1 of the License, or (at your option) any later version.
-//
-// The GNU C Library is distributed in the hope that it will be useful,
-// but WITHOUT ANY WARRANTY; without even the implied warranty of
-// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-// Lesser General Public License for more details.
-//
-// You should have received a copy of the GNU Lesser General Public
-// License along with the GNU C Library; if not, see
-// <http://www.gnu.org/licenses/>.
-
-package inotify
-
-const (
- // Flags for the parameter of InotifyInit1().
- // These, oddly, appear to be 24-bit numbers.
- IN_CLOEXEC int = 02000000
- IN_NONBLOCK int = 00004000
-)
-
-type file int // File Descriptor
-type Wd int // Watch Descriptor
-
-type Mask uint32
-
-const (
- // Supported events suitable for the `mask` parameter of Inotify.AddWatch().
- IN_ACCESS Mask = (1 << 0) // File was accessed.
- IN_MODIFY Mask = (1 << 1) // File was modified.
- IN_ATTRIB Mask = (1 << 2) // Metadata changed.
- IN_CLOSE_WRITE Mask = (1 << 3) // Writtable file was closed.
- IN_CLOSE_NOWRITE Mask = (1 << 4) // Unwrittable file closed.
- IN_OPEN Mask = (1 << 5) // File was opened.
- IN_MOVED_FROM Mask = (1 << 6) // File was moved from X.
- IN_MOVED_TO Mask = (1 << 7) // File was moved to Y.
- IN_CREATE Mask = (1 << 8) // Subfile was created.
- IN_DELETE Mask = (1 << 9) // Subfile was deleted.
- IN_DELETE_SELF Mask = (1 << 10) // Self was deleted.
- IN_MOVE_SELF Mask = (1 << 11) // Self was moved.
-
- // Events that appear in output without subscribing to them.
- IN_UNMOUNT Mask = (1 << 13) // Backing fs was unmounted.
- IN_Q_OVERFLOW Mask = (1 << 14) // Event queued overflowed.
- IN_IGNORED Mask = (1 << 15) // File was ignored (expect no more events).
-
- // Special flags that you may pass to Inotify.AddWatch()...
- // except for IN_ISDIR, which is a flag that is set on output events.
- IN_ONLYDIR Mask = (1 << 24) // Only watch the path if it is a directory.
- IN_DONT_FOLLOW Mask = (1 << 25) // Do not follow a sym link.
- IN_EXCL_UNLINK Mask = (1 << 26) // Exclude events on unlinked objects.
- IN_MASK_ADD Mask = (1 << 29) // Add to the mask of an already existing watch.
- IN_ISDIR Mask = (1 << 30) // Event occurred against dir.
- IN_ONESHOT Mask = (1 << 31) // Only send event once.
-
- // Convenience macros */
- IN_CLOSE Mask = (IN_CLOSE_WRITE | IN_CLOSE_NOWRITE) // Close.
- IN_MOVE Mask = (IN_MOVED_FROM | IN_MOVED_TO) // Moves.
- IN_ALL_EVENTS Mask = 0x00000FFF // All events which a program can wait on.
-)
-
-var in_bits [32]string = [32]string{
- // mask
- /* 0 */ "IN_ACCESS",
- /* 1 */ "IN_MODIFY",
- /* 2 */ "IN_ATTRIB",
- /* 3 */ "IN_CLOSE_WRITE",
- /* 4 */ "IN_CLOSE_NOWRITE",
- /* 5 */ "IN_OPEN",
- /* 6 */ "IN_MOVED_FROM",
- /* 7 */ "IN_MOVED_TO",
- /* 8 */ "IN_CREATE",
- /* 9 */ "IN_DELETE",
- /* 10 */ "IN_DELETE_SELF",
- /* 11 */ "IN_MOVE_SELF",
- /* 12 */ "(1<<12)",
- // events sent by the kernel
- /* 13 */ "IN_UNMOUNT",
- /* 14 */ "IN_Q_OVERFLOW",
- /* 15 */ "IN_IGNORED",
- /* 16 */ "(1<<16)",
- /* 17 */ "(1<<17)",
- /* 18 */ "(1<<18)",
- /* 19 */ "(1<<19)",
- /* 20 */ "(1<<20)",
- /* 21 */ "(1<<21)",
- /* 22 */ "(1<<22)",
- /* 23 */ "(1<<23)",
- // special flags
- /* 24 */ "IN_ONLYDIR",
- /* 25 */ "IN_DONT_FOLLOW",
- /* 26 */ "IN_EXCL_UNLINK",
- /* 27 */ "(1<<27)",
- /* 28 */ "(1<<28)",
- /* 29 */ "IN_MASK_ADD",
- /* 30 */ "IN_ISDIR",
- /* 31 */ "IN_ONESHOT",
-}
-
-func (mask Mask) String() string {
- out := ""
- for i, name := range in_bits {
- if mask&(Mask(1)<<uint(i)) != 0 {
- if len(out) > 0 {
- out += "|"
- }
- out += name
- }
- }
- return out
-}