Logo Search packages:      
Sourcecode: fuse version File versions  Download package

Public Attributes

fuse_operations Struct Reference

#include <fuse.h>

List of all members.

Public Attributes

int(* access )(const char *, int)
int(* bmap )(const char *, size_t blocksize, uint64_t *idx)
int(* chmod )(const char *, mode_t)
int(* chown )(const char *, uid_t, gid_t)
int(* create )(const char *, mode_t, struct fuse_file_info *)
void(* destroy )(void *)
int(* fgetattr )(const char *, struct stat *, struct fuse_file_info *)
unsigned int flag_nullpath_ok: 1
unsigned int flag_reserved: 31
int(* flush )(const char *, struct fuse_file_info *)
int(* fsync )(const char *, int, struct fuse_file_info *)
int(* fsyncdir )(const char *, int, struct fuse_file_info *)
int(* ftruncate )(const char *, off_t, struct fuse_file_info *)
int(* getattr )(const char *, struct stat *)
int(* getdir )(const char *, fuse_dirh_t, fuse_dirfil_t)
int(* getxattr )(const char *, const char *, char *, size_t)
void *(* init )(struct fuse_conn_info *conn)
int(* ioctl )(const char *, int cmd, void *arg, struct fuse_file_info *, unsigned int flags, void *data)
int(* link )(const char *, const char *)
int(* listxattr )(const char *, char *, size_t)
int(* lock )(const char *, struct fuse_file_info *, int cmd, struct flock *)
int(* mkdir )(const char *, mode_t)
int(* mknod )(const char *, mode_t, dev_t)
int(* open )(const char *, struct fuse_file_info *)
int(* opendir )(const char *, struct fuse_file_info *)
int(* poll )(const char *, struct fuse_file_info *, struct fuse_pollhandle *ph, unsigned *reventsp)
int(* read )(const char *, char *, size_t, off_t, struct fuse_file_info *)
int(* readdir )(const char *, void *, fuse_fill_dir_t, off_t, struct fuse_file_info *)
int(* readlink )(const char *, char *, size_t)
int(* release )(const char *, struct fuse_file_info *)
int(* releasedir )(const char *, struct fuse_file_info *)
int(* removexattr )(const char *, const char *)
int(* rename )(const char *, const char *)
int(* rmdir )(const char *)
int(* setxattr )(const char *, const char *, const char *, size_t, int)
int(* statfs )(const char *, struct statvfs *)
int(* symlink )(const char *, const char *)
int(* truncate )(const char *, off_t)
int(* unlink )(const char *)
int(* utime )(const char *, struct utimbuf *)
int(* utimens )(const char *, const struct timespec tv[2])
int(* write )(const char *, const char *, size_t, off_t, struct fuse_file_info *)

Detailed Description

The file system operations:

Most of these should work very similarly to the well known UNIX file system operations. A major exception is that instead of returning an error in 'errno', the operation should return the negated error value (-errno) directly.

All methods are optional, but some are essential for a useful filesystem (e.g. getattr). Open, flush, release, fsync, opendir, releasedir, fsyncdir, access, create, ftruncate, fgetattr, lock, init and destroy are special purpose methods, without which a full featured filesystem can still be implemented.

Almost all operations take a path which can be of any length.

Changed in fuse 2.8.0 (regardless of API version) Previously, paths were limited to a length of PATH_MAX.

See http://fuse.sourceforge.net/wiki/ for more information. There is also a snapshot of the relevant wiki pages in the doc/ folder.

Definition at line 88 of file fuse.h.

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

Generated by  Doxygen 1.6.0   Back to index