libfuse

Data Fields
fuse_entry_param Struct Reference

`#include <fuse_lowlevel.h>`

## Data Fields
fuse_ino_t | ino
uint64_t | generation
struct stat | attr
double | attr_timeout
double | entry_timeout

## Detailed Description

Directory entry parameters supplied to fuse_reply_entry()

Definition at line 60 of file fuse_lowlevel.h.

## Field Documentation

## ◆ attr

struct stat fuse_entry_param::attr

Inode attributes.

Even if attr_timeout == 0, 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.

Definition at line 89 of file fuse_lowlevel.h.

## ◆ attr_timeout

double fuse_entry_param::attr_timeout

Validity timeout (in seconds) for inode attributes. If attributes only change as a result of requests that come through the kernel, this should be set to a very large value.

Definition at line 95 of file fuse_lowlevel.h.

## ◆ entry_timeout

double fuse_entry_param::entry_timeout

Validity timeout (in seconds) for the name. If directory entries are changed/deleted only as a result of requests that come through the kernel, this should be set to a very large value.

Definition at line 101 of file fuse_lowlevel.h.

## ◆ generation

uint64_t fuse_entry_param::generation

Generation number for this entry.

If the file system will be exported over NFS, the ino/generation pairs need to be unique over the file system's lifetime (rather than just the mount time). So if the file system reuses an inode after it has been deleted, it must assign a new, previously unused generation number to the inode at the same time.

Definition at line 80 of file fuse_lowlevel.h.

## ◆ ino

fuse_ino_t fuse_entry_param::ino

Unique inode number

In lookup, zero means negative entry (from version 2.5) Returning ENOENT also means negative entry, but by setting zero ino the kernel may cache negative entries for entry_timeout seconds.

Definition at line 68 of file fuse_lowlevel.h.

The documentation for this struct was generated from the following files:

- fuse-3.17.1-rc0/include/fuse_lowlevel.h
- include/fuse_lowlevel.h