diff options
Diffstat (limited to 'vendor/rustix/src/backend/linux_raw/fs/inotify.rs')
-rw-r--r-- | vendor/rustix/src/backend/linux_raw/fs/inotify.rs | 118 |
1 files changed, 0 insertions, 118 deletions
diff --git a/vendor/rustix/src/backend/linux_raw/fs/inotify.rs b/vendor/rustix/src/backend/linux_raw/fs/inotify.rs deleted file mode 100644 index 851335b..0000000 --- a/vendor/rustix/src/backend/linux_raw/fs/inotify.rs +++ /dev/null @@ -1,118 +0,0 @@ -//! inotify support for working with inotifies - -use crate::backend::c; -use crate::backend::fs::syscalls; -use crate::fd::{BorrowedFd, OwnedFd}; -use crate::io; -use bitflags::bitflags; - -bitflags! { - /// `IN_*` for use with [`inotify_init`]. - /// - /// [`inotify_init`]: crate::fs::inotify::inotify_init - #[repr(transparent)] - #[derive(Copy, Clone, Eq, PartialEq, Hash, Debug)] - pub struct CreateFlags: c::c_uint { - /// `IN_CLOEXEC` - const CLOEXEC = linux_raw_sys::general::IN_CLOEXEC; - /// `IN_NONBLOCK` - const NONBLOCK = linux_raw_sys::general::IN_NONBLOCK; - - /// <https://docs.rs/bitflags/*/bitflags/#externally-defined-flags> - const _ = !0; - } -} - -bitflags! { - /// `IN*` for use with [`inotify_add_watch`]. - /// - /// [`inotify_add_watch`]: crate::fs::inotify::inotify_add_watch - #[repr(transparent)] - #[derive(Default, Copy, Clone, Eq, PartialEq, Hash, Debug)] - pub struct WatchFlags: c::c_uint { - /// `IN_ACCESS` - const ACCESS = linux_raw_sys::general::IN_ACCESS; - /// `IN_ATTRIB` - const ATTRIB = linux_raw_sys::general::IN_ATTRIB; - /// `IN_CLOSE_NOWRITE` - const CLOSE_NOWRITE = linux_raw_sys::general::IN_CLOSE_NOWRITE; - /// `IN_CLOSE_WRITE` - const CLOSE_WRITE = linux_raw_sys::general::IN_CLOSE_WRITE; - /// `IN_CREATE` - const CREATE = linux_raw_sys::general::IN_CREATE; - /// `IN_DELETE` - const DELETE = linux_raw_sys::general::IN_DELETE; - /// `IN_DELETE_SELF` - const DELETE_SELF = linux_raw_sys::general::IN_DELETE_SELF; - /// `IN_MODIFY` - const MODIFY = linux_raw_sys::general::IN_MODIFY; - /// `IN_MOVE_SELF` - const MOVE_SELF = linux_raw_sys::general::IN_MOVE_SELF; - /// `IN_MOVED_FROM` - const MOVED_FROM = linux_raw_sys::general::IN_MOVED_FROM; - /// `IN_MOVED_TO` - const MOVED_TO = linux_raw_sys::general::IN_MOVED_TO; - /// `IN_OPEN` - const OPEN = linux_raw_sys::general::IN_OPEN; - - /// `IN_CLOSE` - const CLOSE = linux_raw_sys::general::IN_CLOSE; - /// `IN_MOVE` - const MOVE = linux_raw_sys::general::IN_MOVE; - /// `IN_ALL_EVENTS` - const ALL_EVENTS = linux_raw_sys::general::IN_ALL_EVENTS; - - /// `IN_DONT_FOLLOW` - const DONT_FOLLOW = linux_raw_sys::general::IN_DONT_FOLLOW; - /// `IN_EXCL_UNLINK` - const EXCL_UNLINK = linux_raw_sys::general::IN_EXCL_UNLINK; - /// `IN_MASK_ADD` - const MASK_ADD = linux_raw_sys::general::IN_MASK_ADD; - /// `IN_MASK_CREATE` - const MASK_CREATE = linux_raw_sys::general::IN_MASK_CREATE; - /// `IN_ONESHOT` - const ONESHOT = linux_raw_sys::general::IN_ONESHOT; - /// `IN_ONLYDIR` - const ONLYDIR = linux_raw_sys::general::IN_ONLYDIR; - - /// <https://docs.rs/bitflags/*/bitflags/#externally-defined-flags> - const _ = !0; - } -} - -/// `inotify_init1(flags)`—Creates a new inotify object. -/// -/// Use the [`CreateFlags::CLOEXEC`] flag to prevent the resulting file -/// descriptor from being implicitly passed across `exec` boundaries. -#[doc(alias = "inotify_init1")] -#[inline] -pub fn inotify_init(flags: CreateFlags) -> io::Result<OwnedFd> { - syscalls::inotify_init1(flags) -} - -/// `inotify_add_watch(self, path, flags)`—Adds a watch to inotify. -/// -/// This registers or updates a watch for the filesystem path `path` and -/// returns a watch descriptor corresponding to this watch. -/// -/// Note: Due to the existence of hardlinks, providing two different paths to -/// this method may result in it returning the same watch descriptor. An -/// application should keep track of this externally to avoid logic errors. -#[inline] -pub fn inotify_add_watch<P: crate::path::Arg>( - inot: BorrowedFd<'_>, - path: P, - flags: WatchFlags, -) -> io::Result<i32> { - path.into_with_c_str(|path| syscalls::inotify_add_watch(inot, path, flags)) -} - -/// `inotify_rm_watch(self, wd)`—Removes a watch from this inotify. -/// -/// The watch descriptor provided should have previously been returned by -/// [`inotify_add_watch`] and not previously have been removed. -#[doc(alias = "inotify_rm_watch")] -#[inline] -pub fn inotify_remove_watch(inot: BorrowedFd<'_>, wd: i32) -> io::Result<()> { - syscalls::inotify_rm_watch(inot, wd) -} |