[][src]Struct vfs_service::fuse_system::Fs

pub struct Fs { /* fields omitted */ }

Methods

impl Fs[src]

pub fn new(svcs: Vec<Box<dyn SingleService + Send>>) -> Fs[src]

Trait Implementations

impl Filesystem for Fs[src]

fn destroy(&mut self, _req: &Request)[src]

Clean up filesystem. Called on filesystem exit. Read more

fn forget(&mut self, _req: &Request, _ino: u64, _nlookup: u64)[src]

Forget about an inode. The nlookup parameter indicates the number of lookups previously performed on this inode. If the filesystem implements inode lifetimes, it is recommended that inodes acquire a single reference on each lookup, and lose nlookup references on each forget. The filesystem may ignore forget calls, if the inodes don't need to have a limited lifetime. On unmount it is not guaranteed, that all referenced inodes will receive a forget message. Read more

Read symbolic link.

fn mknod(
    &mut self,
    _req: &Request,
    _parent: u64,
    _name: &OsStr,
    _mode: u32,
    _rdev: u32,
    reply: ReplyEntry
)
[src]

Create file node. Create a regular file, character device, block device, fifo or socket node. Read more

Create a symbolic link.

Create a hard link.

fn fsync(
    &mut self,
    _req: &Request,
    _ino: u64,
    _fh: u64,
    _datasync: bool,
    reply: ReplyEmpty
)
[src]

Synchronize file contents. If the datasync parameter is non-zero, then only the user data should be flushed, not the meta data. Read more

fn opendir(&mut self, _req: &Request, _ino: u64, _flags: u32, reply: ReplyOpen)[src]

Open a directory. Filesystem may store an arbitrary file handle (pointer, index, etc) in fh, and use this in other all other directory stream operations (readdir, releasedir, fsyncdir). Filesystem may also implement stateless directory I/O and not store anything in fh, though that makes it impossible to implement standard conforming directory stream operations in case the contents of the directory can change between opendir and releasedir. Read more

fn releasedir(
    &mut self,
    _req: &Request,
    _ino: u64,
    _fh: u64,
    _flags: u32,
    reply: ReplyEmpty
)
[src]

Release an open directory. For every opendir call there will be exactly one releasedir call. fh will contain the value set by the opendir method, or will be undefined if the opendir method didn't set any value. Read more

fn fsyncdir(
    &mut self,
    _req: &Request,
    _ino: u64,
    _fh: u64,
    _datasync: bool,
    reply: ReplyEmpty
)
[src]

Synchronize directory contents. If the datasync parameter is set, then only the directory contents should be flushed, not the meta data. fh will contain the value set by the opendir method, or will be undefined if the opendir method didn't set any value. Read more

fn statfs(&mut self, _req: &Request, _ino: u64, reply: ReplyStatfs)[src]

Get file system statistics.

fn setxattr(
    &mut self,
    _req: &Request,
    _ino: u64,
    _name: &OsStr,
    _value: &[u8],
    _flags: u32,
    _position: u32,
    reply: ReplyEmpty
)
[src]

Set an extended attribute.

fn getxattr(
    &mut self,
    _req: &Request,
    _ino: u64,
    _name: &OsStr,
    _size: u32,
    reply: ReplyXattr
)
[src]

Get an extended attribute. If size is 0, the size of the value should be sent with reply.size(). If size is not 0, and the value fits, send it with reply.data(), or reply.error(ERANGE) if it doesn't. Read more

fn listxattr(
    &mut self,
    _req: &Request,
    _ino: u64,
    _size: u32,
    reply: ReplyXattr
)
[src]

List extended attribute names. If size is 0, the size of the value should be sent with reply.size(). If size is not 0, and the value fits, send it with reply.data(), or reply.error(ERANGE) if it doesn't. Read more

fn removexattr(
    &mut self,
    _req: &Request,
    _ino: u64,
    _name: &OsStr,
    reply: ReplyEmpty
)
[src]

Remove an extended attribute.

fn getlk(
    &mut self,
    _req: &Request,
    _ino: u64,
    _fh: u64,
    _lock_owner: u64,
    _start: u64,
    _end: u64,
    _typ: u32,
    _pid: u32,
    reply: ReplyLock
)
[src]

Test for a POSIX file lock.

fn setlk(
    &mut self,
    _req: &Request,
    _ino: u64,
    _fh: u64,
    _lock_owner: u64,
    _start: u64,
    _end: u64,
    _typ: u32,
    _pid: u32,
    _sleep: bool,
    reply: ReplyEmpty
)
[src]

Acquire, modify or release a POSIX file lock. For POSIX threads (NPTL) there's a 1-1 relation between pid and owner, but otherwise this is not always the case. For checking lock ownership, 'fi->owner' must be used. The l_pid field in 'struct flock' should only be used to fill in this field in getlk(). Note: if the locking methods are not implemented, the kernel will still allow file locking to work locally. Hence these are only interesting for network filesystems and similar. Read more

fn bmap(
    &mut self,
    _req: &Request,
    _ino: u64,
    _blocksize: u32,
    _idx: u64,
    reply: ReplyBmap
)
[src]

Map block index within file to block index within device. Note: This makes sense only for block device backed filesystems mounted with the 'blkdev' option Read more

Auto Trait Implementations

impl !Sync for Fs

impl Send for Fs

impl Unpin for Fs

impl !RefUnwindSafe for Fs

impl !UnwindSafe for Fs

Blanket Implementations

impl<T> From<T> for T[src]

impl<T, U> Into<U> for T where
    U: From<T>, 
[src]

impl<T, U> TryFrom<U> for T where
    U: Into<T>, 
[src]

type Error = Infallible

The type returned in the event of a conversion error.

impl<T, U> TryInto<U> for T where
    U: TryFrom<T>, 
[src]

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.

impl<T> BorrowMut<T> for T where
    T: ?Sized
[src]

impl<T> Borrow<T> for T where
    T: ?Sized
[src]

impl<T> Any for T where
    T: 'static + ?Sized
[src]