Struct fuse_backend_rs::api::filesystem::Entry
source · pub struct Entry {
pub inode: u64,
pub generation: u64,
pub attr: stat64,
pub attr_flags: u32,
pub attr_timeout: Duration,
pub entry_timeout: Duration,
}Expand description
Information about a path in the filesystem.
Fields§
§inode: u64An Inode that uniquely identifies this path. During lookup, setting this to 0 means a
negative entry. Returning ENOENT also means a negative entry but setting this to 0
allows the kernel to cache the negative result for entry_timeout. The value should be
produced by converting a FileSystem::Inode into a u64.
generation: u64The generation number for this Entry. Typically used for network file systems. An inode
/ generation pair must be unique over the lifetime of the file system (rather than just
the lifetime of the mount). In other words, if a FileSystem implementation re-uses an
Inode after it has been deleted then it must assign a new, previously unused generation
number to the Inode at the same time.
attr: stat64Inode attributes. Even if attr_timeout is zero, attr must be correct. For example, for
open(), FUSE uses attr.st_size from lookup() to determine how many bytes to request.
If this value is not correct, incorrect data will be returned.
attr_flags: u32Flags for ‘fuse::Attr.flags’
attr_timeout: DurationHow long the values in attr should be considered valid. If the attributes of the Entry
are only modified by the FUSE client, then this should be set to a very large value.
entry_timeout: DurationHow long the name associated with this Entry should be considered valid. If directory
entries are only changed or deleted by the FUSE client, then this should be set to a very
large value.