Linux Kernel  3.7.1
 All Data Structures Namespaces Files Functions Variables Typedefs Enumerations Enumerator Macros Groups Pages
Data Structures | Macros | Enumerations
fuse.h File Reference
#include <linux/types.h>

Go to the source code of this file.

Data Structures

struct  fuse_attr
 
struct  fuse_kstatfs
 
struct  fuse_file_lock
 
struct  fuse_entry_out
 
struct  fuse_forget_in
 
struct  fuse_forget_one
 
struct  fuse_batch_forget_in
 
struct  fuse_getattr_in
 
struct  fuse_attr_out
 
struct  fuse_mknod_in
 
struct  fuse_mkdir_in
 
struct  fuse_rename_in
 
struct  fuse_link_in
 
struct  fuse_setattr_in
 
struct  fuse_open_in
 
struct  fuse_create_in
 
struct  fuse_open_out
 
struct  fuse_release_in
 
struct  fuse_flush_in
 
struct  fuse_read_in
 
struct  fuse_write_in
 
struct  fuse_write_out
 
struct  fuse_statfs_out
 
struct  fuse_fsync_in
 
struct  fuse_setxattr_in
 
struct  fuse_getxattr_in
 
struct  fuse_getxattr_out
 
struct  fuse_lk_in
 
struct  fuse_lk_out
 
struct  fuse_access_in
 
struct  fuse_init_in
 
struct  fuse_init_out
 
struct  cuse_init_in
 
struct  cuse_init_out
 
struct  fuse_interrupt_in
 
struct  fuse_bmap_in
 
struct  fuse_bmap_out
 
struct  fuse_ioctl_in
 
struct  fuse_ioctl_iovec
 
struct  fuse_ioctl_out
 
struct  fuse_poll_in
 
struct  fuse_poll_out
 
struct  fuse_notify_poll_wakeup_out
 
struct  fuse_fallocate_in
 
struct  fuse_in_header
 
struct  fuse_out_header
 
struct  fuse_dirent
 
struct  fuse_notify_inval_inode_out
 
struct  fuse_notify_inval_entry_out
 
struct  fuse_notify_delete_out
 
struct  fuse_notify_store_out
 
struct  fuse_notify_retrieve_out
 
struct  fuse_notify_retrieve_in
 

Macros

#define FUSE_KERNEL_VERSION   7
 
#define FUSE_KERNEL_MINOR_VERSION   20
 
#define FUSE_ROOT_ID   1
 
#define FATTR_MODE   (1 << 0)
 
#define FATTR_UID   (1 << 1)
 
#define FATTR_GID   (1 << 2)
 
#define FATTR_SIZE   (1 << 3)
 
#define FATTR_ATIME   (1 << 4)
 
#define FATTR_MTIME   (1 << 5)
 
#define FATTR_FH   (1 << 6)
 
#define FATTR_ATIME_NOW   (1 << 7)
 
#define FATTR_MTIME_NOW   (1 << 8)
 
#define FATTR_LOCKOWNER   (1 << 9)
 
#define FOPEN_DIRECT_IO   (1 << 0)
 
#define FOPEN_KEEP_CACHE   (1 << 1)
 
#define FOPEN_NONSEEKABLE   (1 << 2)
 
#define FUSE_ASYNC_READ   (1 << 0)
 
#define FUSE_POSIX_LOCKS   (1 << 1)
 
#define FUSE_FILE_OPS   (1 << 2)
 
#define FUSE_ATOMIC_O_TRUNC   (1 << 3)
 
#define FUSE_EXPORT_SUPPORT   (1 << 4)
 
#define FUSE_BIG_WRITES   (1 << 5)
 
#define FUSE_DONT_MASK   (1 << 6)
 
#define FUSE_SPLICE_WRITE   (1 << 7)
 
#define FUSE_SPLICE_MOVE   (1 << 8)
 
#define FUSE_SPLICE_READ   (1 << 9)
 
#define FUSE_FLOCK_LOCKS   (1 << 10)
 
#define FUSE_HAS_IOCTL_DIR   (1 << 11)
 
#define FUSE_AUTO_INVAL_DATA   (1 << 12)
 
#define CUSE_UNRESTRICTED_IOCTL   (1 << 0)
 
#define FUSE_RELEASE_FLUSH   (1 << 0)
 
#define FUSE_RELEASE_FLOCK_UNLOCK   (1 << 1)
 
#define FUSE_GETATTR_FH   (1 << 0)
 
#define FUSE_LK_FLOCK   (1 << 0)
 
#define FUSE_WRITE_CACHE   (1 << 0)
 
#define FUSE_WRITE_LOCKOWNER   (1 << 1)
 
#define FUSE_READ_LOCKOWNER   (1 << 1)
 
#define FUSE_IOCTL_COMPAT   (1 << 0)
 
#define FUSE_IOCTL_UNRESTRICTED   (1 << 1)
 
#define FUSE_IOCTL_RETRY   (1 << 2)
 
#define FUSE_IOCTL_32BIT   (1 << 3)
 
#define FUSE_IOCTL_DIR   (1 << 4)
 
#define FUSE_IOCTL_MAX_IOV   256
 
#define FUSE_POLL_SCHEDULE_NOTIFY   (1 << 0)
 
#define FUSE_MIN_READ_BUFFER   8192
 
#define FUSE_COMPAT_ENTRY_OUT_SIZE   120
 
#define FUSE_COMPAT_ATTR_OUT_SIZE   96
 
#define FUSE_COMPAT_MKNOD_IN_SIZE   8
 
#define FUSE_COMPAT_WRITE_IN_SIZE   24
 
#define FUSE_COMPAT_STATFS_SIZE   48
 
#define CUSE_INIT_INFO_MAX   4096
 
#define FUSE_NAME_OFFSET   offsetof(struct fuse_dirent, name)
 
#define FUSE_DIRENT_ALIGN(x)   (((x) + sizeof(__u64) - 1) & ~(sizeof(__u64) - 1))
 
#define FUSE_DIRENT_SIZE(d)   FUSE_DIRENT_ALIGN(FUSE_NAME_OFFSET + (d)->namelen)
 

Enumerations

enum  fuse_opcode {
  FUSE_LOOKUP = 1, FUSE_FORGET = 2, FUSE_GETATTR = 3, FUSE_SETATTR = 4,
  FUSE_READLINK = 5, FUSE_SYMLINK = 6, FUSE_MKNOD = 8, FUSE_MKDIR = 9,
  FUSE_UNLINK = 10, FUSE_RMDIR = 11, FUSE_RENAME = 12, FUSE_LINK = 13,
  FUSE_OPEN = 14, FUSE_READ = 15, FUSE_WRITE = 16, FUSE_STATFS = 17,
  FUSE_RELEASE = 18, FUSE_FSYNC = 20, FUSE_SETXATTR = 21, FUSE_GETXATTR = 22,
  FUSE_LISTXATTR = 23, FUSE_REMOVEXATTR = 24, FUSE_FLUSH = 25, FUSE_INIT = 26,
  FUSE_OPENDIR = 27, FUSE_READDIR = 28, FUSE_RELEASEDIR = 29, FUSE_FSYNCDIR = 30,
  FUSE_GETLK = 31, FUSE_SETLK = 32, FUSE_SETLKW = 33, FUSE_ACCESS = 34,
  FUSE_CREATE = 35, FUSE_INTERRUPT = 36, FUSE_BMAP = 37, FUSE_DESTROY = 38,
  FUSE_IOCTL = 39, FUSE_POLL = 40, FUSE_NOTIFY_REPLY = 41, FUSE_BATCH_FORGET = 42,
  FUSE_FALLOCATE = 43, CUSE_INIT = 4096
}
 
enum  fuse_notify_code {
  FUSE_NOTIFY_POLL = 1, FUSE_NOTIFY_INVAL_INODE = 2, FUSE_NOTIFY_INVAL_ENTRY = 3, FUSE_NOTIFY_STORE = 4,
  FUSE_NOTIFY_RETRIEVE = 5, FUSE_NOTIFY_DELETE = 6, FUSE_NOTIFY_CODE_MAX
}
 

Macro Definition Documentation

#define CUSE_INIT_INFO_MAX   4096

Definition at line 523 of file fuse.h.

#define CUSE_UNRESTRICTED_IOCTL   (1 << 0)

CUSE INIT request/reply flags

CUSE_UNRESTRICTED_IOCTL: use unrestricted ioctl

Definition at line 202 of file fuse.h.

#define FATTR_ATIME   (1 << 4)

Definition at line 148 of file fuse.h.

#define FATTR_ATIME_NOW   (1 << 7)

Definition at line 151 of file fuse.h.

#define FATTR_FH   (1 << 6)

Definition at line 150 of file fuse.h.

#define FATTR_GID   (1 << 2)

Definition at line 146 of file fuse.h.

#define FATTR_LOCKOWNER   (1 << 9)

Definition at line 153 of file fuse.h.

#define FATTR_MODE   (1 << 0)

Bitmasks for fuse_setattr_in.valid

Definition at line 144 of file fuse.h.

#define FATTR_MTIME   (1 << 5)

Definition at line 149 of file fuse.h.

#define FATTR_MTIME_NOW   (1 << 8)

Definition at line 152 of file fuse.h.

#define FATTR_SIZE   (1 << 3)

Definition at line 147 of file fuse.h.

#define FATTR_UID   (1 << 1)

Definition at line 145 of file fuse.h.

#define FOPEN_DIRECT_IO   (1 << 0)

Flags returned by the OPEN request

FOPEN_DIRECT_IO: bypass page cache for this open file FOPEN_KEEP_CACHE: don't invalidate the data cache on open FOPEN_NONSEEKABLE: the file is not seekable

Definition at line 162 of file fuse.h.

#define FOPEN_KEEP_CACHE   (1 << 1)

Definition at line 163 of file fuse.h.

#define FOPEN_NONSEEKABLE   (1 << 2)

Definition at line 164 of file fuse.h.

#define FUSE_ASYNC_READ   (1 << 0)

INIT request/reply flags

FUSE_ASYNC_READ: asynchronous read requests FUSE_POSIX_LOCKS: remote locking for POSIX file locks FUSE_FILE_OPS: kernel sends file handle for fstat, etc... (not yet supported) FUSE_ATOMIC_O_TRUNC: handles the O_TRUNC open flag in the filesystem FUSE_EXPORT_SUPPORT: filesystem handles lookups of "." and ".." FUSE_BIG_WRITES: filesystem can handle write size larger than 4kB FUSE_DONT_MASK: don't apply umask to file mode on create operations FUSE_SPLICE_WRITE: kernel supports splice write on the device FUSE_SPLICE_MOVE: kernel supports splice move on the device FUSE_SPLICE_READ: kernel supports splice read on the device FUSE_FLOCK_LOCKS: remote locking for BSD style file locks FUSE_HAS_IOCTL_DIR: kernel supports ioctl on directories FUSE_AUTO_INVAL_DATA: automatically invalidate cached pages

Definition at line 183 of file fuse.h.

#define FUSE_ATOMIC_O_TRUNC   (1 << 3)

Definition at line 186 of file fuse.h.

#define FUSE_AUTO_INVAL_DATA   (1 << 12)

Definition at line 195 of file fuse.h.

#define FUSE_BIG_WRITES   (1 << 5)

Definition at line 188 of file fuse.h.

#define FUSE_COMPAT_ATTR_OUT_SIZE   96

Definition at line 353 of file fuse.h.

#define FUSE_COMPAT_ENTRY_OUT_SIZE   120

Definition at line 320 of file fuse.h.

#define FUSE_COMPAT_MKNOD_IN_SIZE   8

Definition at line 362 of file fuse.h.

#define FUSE_COMPAT_STATFS_SIZE   48

Definition at line 462 of file fuse.h.

#define FUSE_COMPAT_WRITE_IN_SIZE   24

Definition at line 445 of file fuse.h.

#define FUSE_DIRENT_ALIGN (   x)    (((x) + sizeof(__u64) - 1) & ~(sizeof(__u64) - 1))

Definition at line 629 of file fuse.h.

#define FUSE_DIRENT_SIZE (   d)    FUSE_DIRENT_ALIGN(FUSE_NAME_OFFSET + (d)->namelen)

Definition at line 630 of file fuse.h.

#define FUSE_DONT_MASK   (1 << 6)

Definition at line 189 of file fuse.h.

#define FUSE_EXPORT_SUPPORT   (1 << 4)

Definition at line 187 of file fuse.h.

#define FUSE_FILE_OPS   (1 << 2)

Definition at line 185 of file fuse.h.

#define FUSE_FLOCK_LOCKS   (1 << 10)

Definition at line 193 of file fuse.h.

#define FUSE_GETATTR_FH   (1 << 0)

Getattr flags

Definition at line 213 of file fuse.h.

#define FUSE_HAS_IOCTL_DIR   (1 << 11)

Definition at line 194 of file fuse.h.

#define FUSE_IOCTL_32BIT   (1 << 3)

Definition at line 248 of file fuse.h.

#define FUSE_IOCTL_COMPAT   (1 << 0)

Ioctl flags

FUSE_IOCTL_COMPAT: 32bit compat ioctl on 64bit machine FUSE_IOCTL_UNRESTRICTED: not restricted to well-formed ioctls, retry allowed FUSE_IOCTL_RETRY: retry with new iovecs FUSE_IOCTL_32BIT: 32bit ioctl FUSE_IOCTL_DIR: is a directory

FUSE_IOCTL_MAX_IOV: maximum of in_iovecs + out_iovecs

Definition at line 245 of file fuse.h.

#define FUSE_IOCTL_DIR   (1 << 4)

Definition at line 249 of file fuse.h.

#define FUSE_IOCTL_MAX_IOV   256

Definition at line 251 of file fuse.h.

#define FUSE_IOCTL_RETRY   (1 << 2)

Definition at line 247 of file fuse.h.

#define FUSE_IOCTL_UNRESTRICTED   (1 << 1)

Definition at line 246 of file fuse.h.

#define FUSE_KERNEL_MINOR_VERSION   20

Minor version number of this interface

Definition at line 94 of file fuse.h.

#define FUSE_KERNEL_VERSION   7

Version number of this interface

Definition at line 91 of file fuse.h.

#define FUSE_LK_FLOCK   (1 << 0)

Lock flags

Definition at line 218 of file fuse.h.

#define FUSE_MIN_READ_BUFFER   8192

Definition at line 318 of file fuse.h.

#define FUSE_NAME_OFFSET   offsetof(struct fuse_dirent, name)

Definition at line 628 of file fuse.h.

#define FUSE_POLL_SCHEDULE_NOTIFY   (1 << 0)

Poll flags

FUSE_POLL_SCHEDULE_NOTIFY: request poll notify

Definition at line 258 of file fuse.h.

#define FUSE_POSIX_LOCKS   (1 << 1)

Definition at line 184 of file fuse.h.

#define FUSE_READ_LOCKOWNER   (1 << 1)

Read flags

Definition at line 232 of file fuse.h.

#define FUSE_RELEASE_FLOCK_UNLOCK   (1 << 1)

Definition at line 208 of file fuse.h.

#define FUSE_RELEASE_FLUSH   (1 << 0)

Release flags

Definition at line 207 of file fuse.h.

#define FUSE_ROOT_ID   1

The node ID of the root inode

Definition at line 97 of file fuse.h.

#define FUSE_SPLICE_MOVE   (1 << 8)

Definition at line 191 of file fuse.h.

#define FUSE_SPLICE_READ   (1 << 9)

Definition at line 192 of file fuse.h.

#define FUSE_SPLICE_WRITE   (1 << 7)

Definition at line 190 of file fuse.h.

#define FUSE_WRITE_CACHE   (1 << 0)

WRITE flags

FUSE_WRITE_CACHE: delayed write from page cache, file handle is guessed FUSE_WRITE_LOCKOWNER: lock_owner field is valid

Definition at line 226 of file fuse.h.

#define FUSE_WRITE_LOCKOWNER   (1 << 1)

Definition at line 227 of file fuse.h.

Enumeration Type Documentation

Enumerator:
FUSE_NOTIFY_POLL 
FUSE_NOTIFY_INVAL_INODE 
FUSE_NOTIFY_INVAL_ENTRY 
FUSE_NOTIFY_STORE 
FUSE_NOTIFY_RETRIEVE 
FUSE_NOTIFY_DELETE 
FUSE_NOTIFY_CODE_MAX 

Definition at line 307 of file fuse.h.

Enumerator:
FUSE_LOOKUP 
FUSE_FORGET 
FUSE_GETATTR 
FUSE_SETATTR 
FUSE_READLINK 
FUSE_SYMLINK 
FUSE_MKNOD 
FUSE_MKDIR 
FUSE_UNLINK 
FUSE_RMDIR 
FUSE_RENAME 
FUSE_LINK 
FUSE_OPEN 
FUSE_READ 
FUSE_WRITE 
FUSE_STATFS 
FUSE_RELEASE 
FUSE_FSYNC 
FUSE_SETXATTR 
FUSE_GETXATTR 
FUSE_LISTXATTR 
FUSE_REMOVEXATTR 
FUSE_FLUSH 
FUSE_INIT 
FUSE_OPENDIR 
FUSE_READDIR 
FUSE_RELEASEDIR 
FUSE_FSYNCDIR 
FUSE_GETLK 
FUSE_SETLK 
FUSE_SETLKW 
FUSE_ACCESS 
FUSE_CREATE 
FUSE_INTERRUPT 
FUSE_BMAP 
FUSE_DESTROY 
FUSE_IOCTL 
FUSE_POLL 
FUSE_NOTIFY_REPLY 
FUSE_BATCH_FORGET 
FUSE_FALLOCATE 
CUSE_INIT 

Definition at line 260 of file fuse.h.