Struct fuse::filesystem::Entry
source · pub struct Entry {
pub inode: u64,
pub generation: u64,
pub attr: stat64,
pub attr_timeout: Duration,
pub entry_timeout: Duration,
}
Expand description
Information about a path in the filesystem.
Fields§
§inode: u64
An 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: u64
The 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: stat64
Inode 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_timeout: Duration
How 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: Duration
How 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.
Implementations§
source§impl Entry
impl Entry
sourcepub fn new_negative(negative_timeout: Duration) -> Entry
pub fn new_negative(negative_timeout: Duration) -> Entry
Creates a new negative cache entry. A negative d_entry has an inode number of 0, and is
valid for the duration of negative_timeout
.
§Arguments
negative_timeout
- The duration for which this negative d_entry should be considered valid. After the timeout expires, the d_entry will be invalidated.
§Returns
A new negative entry with provided entry timeout and 0 attr timeout.