libfuse

fuse.h
Go to the documentation of this file.
1 /*
2 FUSE: Filesystem in Userspace
3 Copyright (C) 2001-2007 Miklos Szeredi <miklos@szeredi.hu>
4
5 This program can be distributed under the terms of the GNU LGPLv2.
6 See the file COPYING.LIB.
7 */
8
9 #ifndef FUSE_H_
10 #define FUSE_H_
11
19 #include "fuse_common.h"
20
21 #include <fcntl.h>
22 #include <time.h>
23 #include <sys/types.h>
24 #include <sys/stat.h>
25 #include <sys/statvfs.h>
26 #include <sys/uio.h>
27
28 #ifdef __cplusplus
29 extern "C" {
30 #endif
31
32 /* ----------------------------------------------------------- *
33 * Basic FUSE API *
34 * ----------------------------------------------------------- */
35
37 struct fuse;
38
42 enum fuse_readdir_flags {
51 FUSE_READDIR_PLUS = (1 << 0)
52 };
53
57 enum fuse_fill_dir_flags {
67 FUSE_FILL_DIR_PLUS = (1 << 1)
68 };
69
85 typedef int (*fuse_fill_dir_t) (void *buf, const char *name,
86 const struct stat *stbuf, off_t off,
87 enum fuse_fill_dir_flags flags);
96 struct fuse_config {
101 int set_gid;
102 unsigned int gid;
103
108 int set_uid;
109 unsigned int uid;
110
115 int set_mode;
116 unsigned int umask;
117
122 double entry_timeout;
123
132 double negative_timeout;
133
138 double attr_timeout;
139
143 int intr;
144
150 int intr_signal;
151
162 int remember;
163
180 int hard_remove;
181
193 int use_ino;
194
202 int readdir_ino;
203
221 int direct_io;
222
240 int kernel_cache;
241
248 int auto_cache;
249
256 int no_rofd_flush;
257
263 int ac_attr_timeout_set;
264 double ac_attr_timeout;
265
276 int nullpath_ok;
277
282 int show_help;
283 char *modules;
284 int debug;
285 };
286
287
310 struct fuse_operations {
322 int (*getattr) (const char *, struct stat *, struct fuse_file_info *fi);
323
332 int (*readlink) (const char *, char *, size_t);
333
340 int (*mknod) (const char *, mode_t, dev_t);
341
348 int (*mkdir) (const char *, mode_t);
349
351 int (*unlink) (const char *);
352
354 int (*rmdir) (const char *);
355
357 int (*symlink) (const char *, const char *);
358
368 int (*rename) (const char *, const char *, unsigned int flags);
369
371 int (*link) (const char *, const char *);
372
378 int (*chmod) (const char *, mode_t, struct fuse_file_info *fi);
379
388 int (*chown) (const char *, uid_t, gid_t, struct fuse_file_info *fi);
389
398 int (*truncate) (const char *, off_t, struct fuse_file_info *fi);
399
447 int (*open) (const char *, struct fuse_file_info *);
448
458 int (*read) (const char *, char *, size_t, off_t,
459 struct fuse_file_info *);
460
470 int (*write) (const char *, const char *, size_t, off_t,
471 struct fuse_file_info *);
472
477 int (*statfs) (const char *, struct statvfs *);
478
507 int (*flush) (const char *, struct fuse_file_info *);
508
521 int (*release) (const char *, struct fuse_file_info *);
522
528 int (*fsync) (const char *, int, struct fuse_file_info *);
529
531 int (*setxattr) (const char *, const char *, const char *, size_t, int);
532
534 int (*getxattr) (const char *, const char *, char *, size_t);
535
537 int (*listxattr) (const char *, char *, size_t);
538
540 int (*removexattr) (const char *, const char *);
541
550 int (*opendir) (const char *, struct fuse_file_info *);
551
574 int (*readdir) (const char *, void *, fuse_fill_dir_t, off_t,
575 struct fuse_file_info *, enum fuse_readdir_flags);
576
582 int (*releasedir) (const char *, struct fuse_file_info *);
583
592 int (*fsyncdir) (const char *, int, struct fuse_file_info *);
593
602 void *(*init) (struct fuse_conn_info *conn,
603 struct fuse_config *cfg);
604
610 void (*destroy) (void *private_data);
611
621 int (*access) (const char *, int);
622
633 int (*create) (const char *, mode_t, struct fuse_file_info *);
634
665 int (*lock) (const char *, struct fuse_file_info *, int cmd,
666 struct flock *);
667
680 int (*utimens) (const char *, const struct timespec tv[2],
681 struct fuse_file_info *fi);
682
689 int (*bmap) (const char *, size_t blocksize, uint64_t *idx);
690
691 #if FUSE_USE_VERSION < 35
692 int (*ioctl) (const char *, int cmd, void *arg,
693 struct fuse_file_info *, unsigned int flags, void *data);
694 #else
711 int (*ioctl) (const char *, unsigned int cmd, void *arg,
712 struct fuse_file_info *, unsigned int flags, void *data);
713 #endif
714
730 int (*poll) (const char *, struct fuse_file_info *,
731 struct fuse_pollhandle *ph, unsigned *reventsp);
732
742 int (*write_buf) (const char *, struct fuse_bufvec *buf, off_t off,
743 struct fuse_file_info *);
744
759 int (*read_buf) (const char *, struct fuse_bufvec **bufp,
760 size_t size, off_t off, struct fuse_file_info *);
779 int (*flock) (const char *, struct fuse_file_info *, int op);
780
789 int (*fallocate) (const char *, int, off_t, off_t,
790 struct fuse_file_info *);
791
804 ssize_t (*copy_file_range) (const char *path_in,
805 struct fuse_file_info *fi_in,
806 off_t offset_in, const char *path_out,
807 struct fuse_file_info *fi_out,
808 off_t offset_out, size_t size, int flags);
809
813 off_t (*lseek) (const char *, off_t off, int whence, struct fuse_file_info *);
814 };
815
821 struct fuse_context {
823 struct fuse *fuse;
824
826 uid_t uid;
827
829 gid_t gid;
830
832 pid_t pid;
833
835 void *private_data;
836
838 mode_t umask;
839 };
840
895 /*
896 int fuse_main(int argc, char *argv[], const struct fuse_operations *op,
897 void *private_data);
898 */
899 #define fuse_main(argc, argv, op, private_data) \
900 fuse_main_real(argc, argv, op, sizeof(*(op)), private_data)
901
902 /* ----------------------------------------------------------- *
903 * More detailed API *
904 * ----------------------------------------------------------- */
905
917 void fuse_lib_help(struct fuse_args *args);
918
946 #if FUSE_USE_VERSION == 30
947 struct fuse *fuse_new_30(struct fuse_args *args, const struct fuse_operations *op,
948 size_t op_size, void *private_data);
949 #define fuse_new(args, op, size, data) fuse_new_30(args, op, size, data)
950 #else
951 #if (defined(LIBFUSE_BUILT_WITH_VERSIONED_SYMBOLS))
952 struct fuse *fuse_new(struct fuse_args *args, const struct fuse_operations *op,
953 size_t op_size, void *private_data);
954 #else /* LIBFUSE_BUILT_WITH_VERSIONED_SYMBOLS */
955 struct fuse *fuse_new_31(struct fuse_args *args,
956 const struct fuse_operations *op,
957 size_t op_size, void *user_data);
958 #define fuse_new(args, op, size, data) fuse_new_31(args, op, size, data)
959 #endif /* LIBFUSE_BUILT_WITH_VERSIONED_SYMBOLS */
960 #endif
961
970 int fuse_mount(struct fuse *f, const char *mountpoint);
971
979 void fuse_unmount(struct fuse *f);
980
989 void fuse_destroy(struct fuse *f);
990
1006 int fuse_loop(struct fuse *f);
1007
1016 void fuse_exit(struct fuse *f);
1017
1018 #if FUSE_USE_VERSION < 32
1019 int fuse_loop_mt_31(struct fuse *f, int clone_fd);
1020 #define fuse_loop_mt(f, clone_fd) fuse_loop_mt_31(f, clone_fd)
1021 #elif FUSE_USE_VERSION < FUSE_MAKE_VERSION(3, 12)
1022 int fuse_loop_mt_32(struct fuse *f, struct fuse_loop_config *config);
1023 #define fuse_loop_mt(f, config) fuse_loop_mt_32(f, config)
1024 #else
1056 #if (defined(LIBFUSE_BUILT_WITH_VERSIONED_SYMBOLS))
1057 int fuse_loop_mt(struct fuse *f, struct fuse_loop_config *config);
1058 #else
1059 #define fuse_loop_mt(f, config) fuse_loop_mt_312(f, config)
1060 #endif /* LIBFUSE_BUILT_WITH_VERSIONED_SYMBOLS */
1061 #endif
1062
1063
1072 struct fuse_context *fuse_get_context(void);
1073
1092 int fuse_getgroups(int size, gid_t list[]);
1093
1099 int fuse_interrupted(void);
1100
1112 int fuse_invalidate_path(struct fuse *f, const char *path);
1113
1119 int fuse_main_real(int argc, char *argv[], const struct fuse_operations *op,
1120 size_t op_size, void *private_data);
1121
1129 int fuse_start_cleanup_thread(struct fuse *fuse);
1130
1137 void fuse_stop_cleanup_thread(struct fuse *fuse);
1138
1148 int fuse_clean_cache(struct fuse *fuse);
1149
1150 /*
1151 * Stacking API
1152 */
1153
1159 struct fuse_fs;
1160
1161 /*
1162 * These functions call the relevant filesystem operation, and return
1163 * the result.
1164 *
1165 * If the operation is not defined, they return -ENOSYS, with the
1166 * exception of fuse_fs_open, fuse_fs_release, fuse_fs_opendir,
1167 * fuse_fs_releasedir and fuse_fs_statfs, which return 0.
1168 */
1169
1170 int fuse_fs_getattr(struct fuse_fs *fs, const char *path, struct stat *buf,
1171 struct fuse_file_info *fi);
1172 int fuse_fs_rename(struct fuse_fs *fs, const char *oldpath,
1173 const char *newpath, unsigned int flags);
1174 int fuse_fs_unlink(struct fuse_fs *fs, const char *path);
1175 int fuse_fs_rmdir(struct fuse_fs *fs, const char *path);
1176 int fuse_fs_symlink(struct fuse_fs *fs, const char *linkname,
1177 const char *path);
1178 int fuse_fs_link(struct fuse_fs *fs, const char *oldpath, const char *newpath);
1179 int fuse_fs_release(struct fuse_fs *fs, const char *path,
1180 struct fuse_file_info *fi);
1181 int fuse_fs_open(struct fuse_fs *fs, const char *path,
1182 struct fuse_file_info *fi);
1183 int fuse_fs_read(struct fuse_fs *fs, const char *path, char *buf, size_t size,
1184 off_t off, struct fuse_file_info *fi);
1185 int fuse_fs_read_buf(struct fuse_fs *fs, const char *path,
1186 struct fuse_bufvec **bufp, size_t size, off_t off,
1187 struct fuse_file_info *fi);
1188 int fuse_fs_write(struct fuse_fs *fs, const char *path, const char *buf,
1189 size_t size, off_t off, struct fuse_file_info *fi);
1190 int fuse_fs_write_buf(struct fuse_fs *fs, const char *path,
1191 struct fuse_bufvec *buf, off_t off,
1192 struct fuse_file_info *fi);
1193 int fuse_fs_fsync(struct fuse_fs *fs, const char *path, int datasync,
1194 struct fuse_file_info *fi);
1195 int fuse_fs_flush(struct fuse_fs *fs, const char *path,
1196 struct fuse_file_info *fi);
1197 int fuse_fs_statfs(struct fuse_fs *fs, const char *path, struct statvfs *buf);
1198 int fuse_fs_opendir(struct fuse_fs *fs, const char *path,
1199 struct fuse_file_info *fi);
1200 int fuse_fs_readdir(struct fuse_fs *fs, const char *path, void *buf,
1201 fuse_fill_dir_t filler, off_t off,
1202 struct fuse_file_info *fi, enum fuse_readdir_flags flags);
1203 int fuse_fs_fsyncdir(struct fuse_fs *fs, const char *path, int datasync,
1204 struct fuse_file_info *fi);
1205 int fuse_fs_releasedir(struct fuse_fs *fs, const char *path,
1206 struct fuse_file_info *fi);
1207 int fuse_fs_create(struct fuse_fs *fs, const char *path, mode_t mode,
1208 struct fuse_file_info *fi);
1209 int fuse_fs_lock(struct fuse_fs *fs, const char *path,
1210 struct fuse_file_info *fi, int cmd, struct flock *lock);
1211 int fuse_fs_flock(struct fuse_fs *fs, const char *path,
1212 struct fuse_file_info *fi, int op);
1213 int fuse_fs_chmod(struct fuse_fs *fs, const char *path, mode_t mode,
1214 struct fuse_file_info *fi);
1215 int fuse_fs_chown(struct fuse_fs *fs, const char *path, uid_t uid, gid_t gid,
1216 struct fuse_file_info *fi);
1217 int fuse_fs_truncate(struct fuse_fs *fs, const char *path, off_t size,
1218 struct fuse_file_info *fi);
1219 int fuse_fs_utimens(struct fuse_fs *fs, const char *path,
1220 const struct timespec tv[2], struct fuse_file_info *fi);
1221 int fuse_fs_access(struct fuse_fs *fs, const char *path, int mask);
1222 int fuse_fs_readlink(struct fuse_fs *fs, const char *path, char *buf,
1223 size_t len);
1224 int fuse_fs_mknod(struct fuse_fs *fs, const char *path, mode_t mode,
1225 dev_t rdev);
1226 int fuse_fs_mkdir(struct fuse_fs *fs, const char *path, mode_t mode);
1227 int fuse_fs_setxattr(struct fuse_fs *fs, const char *path, const char *name,
1228 const char *value, size_t size, int flags);
1229 int fuse_fs_getxattr(struct fuse_fs *fs, const char *path, const char *name,
1230 char *value, size_t size);
1231 int fuse_fs_listxattr(struct fuse_fs *fs, const char *path, char *list,
1232 size_t size);
1233 int fuse_fs_removexattr(struct fuse_fs *fs, const char *path,
1234 const char *name);
1235 int fuse_fs_bmap(struct fuse_fs *fs, const char *path, size_t blocksize,
1236 uint64_t *idx);
1237 #if FUSE_USE_VERSION < 35
1238 int fuse_fs_ioctl(struct fuse_fs *fs, const char *path, int cmd,
1239 void *arg, struct fuse_file_info *fi, unsigned int flags,
1240 void *data);
1241 #else
1242 int fuse_fs_ioctl(struct fuse_fs *fs, const char *path, unsigned int cmd,
1243 void *arg, struct fuse_file_info *fi, unsigned int flags,
1244 void *data);
1245 #endif
1246 int fuse_fs_poll(struct fuse_fs *fs, const char *path,
1247 struct fuse_file_info *fi, struct fuse_pollhandle *ph,
1248 unsigned *reventsp);
1249 int fuse_fs_fallocate(struct fuse_fs *fs, const char *path, int mode,
1250 off_t offset, off_t length, struct fuse_file_info *fi);
1251 ssize_t fuse_fs_copy_file_range(struct fuse_fs *fs, const char *path_in,
1252 struct fuse_file_info *fi_in, off_t off_in,
1253 const char *path_out,
1254 struct fuse_file_info *fi_out, off_t off_out,
1255 size_t len, int flags);
1256 off_t fuse_fs_lseek(struct fuse_fs *fs, const char *path, off_t off, int whence,
1257 struct fuse_file_info *fi);
1258 void fuse_fs_init(struct fuse_fs *fs, struct fuse_conn_info *conn,
1259 struct fuse_config *cfg);
1260 void fuse_fs_destroy(struct fuse_fs *fs);
1261
1262 int fuse_notify_poll(struct fuse_pollhandle *ph);
1263
1277 struct fuse_fs *fuse_fs_new(const struct fuse_operations *op, size_t op_size,
1278 void *private_data);
1279
1294 typedef struct fuse_fs *(*fuse_module_factory_t)(struct fuse_args *args,
1295 struct fuse_fs *fs[]);
1306 #define FUSE_REGISTER_MODULE(name_, factory_) \
1307 fuse_module_factory_t fuse_module_ ## name_ ## _factory = factory_
1308
1310 struct fuse_session *fuse_get_session(struct fuse *f);
1311
1320 int fuse_open_channel(const char *mountpoint, const char *options);
1321
1322 #ifdef __cplusplus
1323 }
1324 #endif
1325
1326 #endif /* FUSE_H_ */
fuse_get_session
struct fuse_session * fuse_get_session(struct fuse *f)
Definition: fuse.c:4468
fuse_getgroups
int fuse_getgroups(int size, gid_t list[])
Definition: fuse.c:4602
fuse_mount
int fuse_mount(struct fuse *f, const char *mountpoint)
Definition: fuse.c:5092
fuse_interrupted
int fuse_interrupted(void)
Definition: fuse.c:4611
fuse_destroy
void fuse_destroy(struct fuse *f)
Definition: fuse.c:5042
fuse_start_cleanup_thread
int fuse_start_cleanup_thread(struct fuse *fuse)
Definition: fuse.c:4845
fuse_invalidate_path
int fuse_invalidate_path(struct fuse *f, const char *path)
Definition: fuse.c:4621
fuse_new_31
struct fuse * fuse_new_31(struct fuse_args *args, const struct fuse_operations *op, size_t op_size, void *user_data)
Definition: fuse.c:4865
fuse_loop
int fuse_loop(struct fuse *f)
Definition: fuse.c:4525
fuse_fs_new
struct fuse_fs * fuse_fs_new(const struct fuse_operations *op, size_t op_size, void *private_data)
Definition: fuse.c:4797
fuse_fill_dir_t
int(* fuse_fill_dir_t)(void *buf, const char *name, const struct stat *stbuf, off_t off, enum fuse_fill_dir_flags flags)
Definition: fuse.h:85
fuse_exit
void fuse_exit(struct fuse *f)
Definition: fuse.c:4587
fuse_clean_cache
int fuse_clean_cache(struct fuse *fuse)
Definition: fuse.c:4381
fuse_get_context
struct fuse_context * fuse_get_context(void)
Definition: fuse.c:4592
fuse_lib_help
void fuse_lib_help(struct fuse_args *args)
Definition: fuse.c:4687
fuse_open_channel
int fuse_open_channel(const char *mountpoint, const char *options)
Definition: helper.c:461
fuse_unmount
void fuse_unmount(struct fuse *f)
Definition: fuse.c:5097
fuse_stop_cleanup_thread
void fuse_stop_cleanup_thread(struct fuse *fuse)
Definition: fuse.c:4853
fuse_main_real
int fuse_main_real(int argc, char *argv[], const struct fuse_operations *op, size_t op_size, void *private_data)
Definition: helper.c:308
fuse_fill_dir_flags
fuse_fill_dir_flags
Definition: fuse.h:57
FUSE_FILL_DIR_PLUS
@ FUSE_FILL_DIR_PLUS
Definition: fuse.h:67
fuse_readdir_flags
fuse_readdir_flags
Definition: fuse.h:42
FUSE_READDIR_PLUS
@ FUSE_READDIR_PLUS
Definition: fuse.h:51
fuse_common.h
fuse_args
Definition: fuse_opt.h:109
fuse_bufvec
Definition: fuse_common.h:773
fuse_bufvec::off
size_t off
Definition: fuse_common.h:787
fuse_bufvec::buf
struct fuse_buf buf[1]
Definition: fuse_common.h:792
fuse_config
Definition: fuse.h:96
fuse_config::remember
int remember
Definition: fuse.h:162
fuse_config::set_uid
int set_uid
Definition: fuse.h:108
fuse_config::set_gid
int set_gid
Definition: fuse.h:101
fuse_config::ac_attr_timeout_set
int ac_attr_timeout_set
Definition: fuse.h:263
fuse_config::entry_timeout
double entry_timeout
Definition: fuse.h:122
fuse_config::intr_signal
int intr_signal
Definition: fuse.h:150
fuse_config::intr
int intr
Definition: fuse.h:143
fuse_config::auto_cache
int auto_cache
Definition: fuse.h:248
fuse_config::negative_timeout
double negative_timeout
Definition: fuse.h:132
fuse_config::kernel_cache
int kernel_cache
Definition: fuse.h:240
fuse_config::set_mode
int set_mode
Definition: fuse.h:115
fuse_config::readdir_ino
int readdir_ino
Definition: fuse.h:202
fuse_config::nullpath_ok
int nullpath_ok
Definition: fuse.h:276
fuse_config::use_ino
int use_ino
Definition: fuse.h:193
fuse_config::no_rofd_flush
int no_rofd_flush
Definition: fuse.h:256
fuse_config::direct_io
int direct_io
Definition: fuse.h:221
fuse_config::attr_timeout
double attr_timeout
Definition: fuse.h:138
fuse_config::hard_remove
int hard_remove
Definition: fuse.h:180
fuse_config::show_help
int show_help
Definition: fuse.h:282
fuse_conn_info
Definition: fuse_common.h:451
fuse_context
Definition: fuse.h:821
fuse_context::private_data
void * private_data
Definition: fuse.h:835
fuse_context::uid
uid_t uid
Definition: fuse.h:826
fuse_context::pid
pid_t pid
Definition: fuse.h:832
fuse_context::fuse
struct fuse * fuse
Definition: fuse.h:823
fuse_context::gid
gid_t gid
Definition: fuse.h:829
fuse_context::umask
mode_t umask
Definition: fuse.h:838
fuse_file_info
Definition: fuse_common.h:44
fuse_file_info::flags
int flags
Definition: fuse_common.h:46
fuse_loop_config
Definition: fuse_common.h:117
fuse_operations
Definition: fuse.h:310
fuse_operations::mkdir
int(* mkdir)(const char *, mode_t)
Definition: fuse.h:348
fuse_operations::truncate
int(* truncate)(const char *, off_t, struct fuse_file_info *fi)
Definition: fuse.h:398
fuse_operations::mknod
int(* mknod)(const char *, mode_t, dev_t)
Definition: fuse.h:340
fuse_operations::utimens
int(* utimens)(const char *, const struct timespec tv[2], struct fuse_file_info *fi)
Definition: fuse.h:680
fuse_operations::open
int(* open)(const char *, struct fuse_file_info *)
Definition: fuse.h:447
fuse_operations::opendir
int(* opendir)(const char *, struct fuse_file_info *)
Definition: fuse.h:550
fuse_operations::link
int(* link)(const char *, const char *)
Definition: fuse.h:371
fuse_operations::lock
int(* lock)(const char *, struct fuse_file_info *, int cmd, struct flock *)
Definition: fuse.h:665
fuse_operations::read_buf
int(* read_buf)(const char *, struct fuse_bufvec **bufp, size_t size, off_t off, struct fuse_file_info *)
Definition: fuse.h:759
fuse_operations::access
int(* access)(const char *, int)
Definition: fuse.h:621
fuse_operations::read
int(* read)(const char *, char *, size_t, off_t, struct fuse_file_info *)
Definition: fuse.h:458
fuse_operations::poll
int(* poll)(const char *, struct fuse_file_info *, struct fuse_pollhandle *ph, unsigned *reventsp)
Definition: fuse.h:730
fuse_operations::destroy
void(* destroy)(void *private_data)
Definition: fuse.h:610
fuse_operations::statfs
int(* statfs)(const char *, struct statvfs *)
Definition: fuse.h:477
fuse_operations::fallocate
int(* fallocate)(const char *, int, off_t, off_t, struct fuse_file_info *)
Definition: fuse.h:789
fuse_operations::removexattr
int(* removexattr)(const char *, const char *)
Definition: fuse.h:540
fuse_operations::getattr
int(* getattr)(const char *, struct stat *, struct fuse_file_info *fi)
Definition: fuse.h:322
fuse_operations::releasedir
int(* releasedir)(const char *, struct fuse_file_info *)
Definition: fuse.h:582
fuse_operations::rename
int(* rename)(const char *, const char *, unsigned int flags)
Definition: fuse.h:368
fuse_operations::lseek
off_t(* lseek)(const char *, off_t off, int whence, struct fuse_file_info *)
Definition: fuse.h:813
fuse_operations::write
int(* write)(const char *, const char *, size_t, off_t, struct fuse_file_info *)
Definition: fuse.h:470
fuse_operations::write_buf
int(* write_buf)(const char *, struct fuse_bufvec *buf, off_t off, struct fuse_file_info *)
Definition: fuse.h:742
fuse_operations::unlink
int(* unlink)(const char *)
Definition: fuse.h:351
fuse_operations::copy_file_range
ssize_t(* copy_file_range)(const char *path_in, struct fuse_file_info *fi_in, off_t offset_in, const char *path_out, struct fuse_file_info *fi_out, off_t offset_out, size_t size, int flags)
Definition: fuse.h:804
fuse_operations::fsync
int(* fsync)(const char *, int, struct fuse_file_info *)
Definition: fuse.h:528
fuse_operations::create
int(* create)(const char *, mode_t, struct fuse_file_info *)
Definition: fuse.h:633
fuse_operations::setxattr
int(* setxattr)(const char *, const char *, const char *, size_t, int)
Definition: fuse.h:531
fuse_operations::listxattr
int(* listxattr)(const char *, char *, size_t)
Definition: fuse.h:537
fuse_operations::readlink
int(* readlink)(const char *, char *, size_t)
Definition: fuse.h:332
fuse_operations::symlink
int(* symlink)(const char *, const char *)
Definition: fuse.h:357
fuse_operations::fsyncdir
int(* fsyncdir)(const char *, int, struct fuse_file_info *)
Definition: fuse.h:592
fuse_operations::release
int(* release)(const char *, struct fuse_file_info *)
Definition: fuse.h:521
fuse_operations::chown
int(* chown)(const char *, uid_t, gid_t, struct fuse_file_info *fi)
Definition: fuse.h:388
fuse_operations::chmod
int(* chmod)(const char *, mode_t, struct fuse_file_info *fi)
Definition: fuse.h:378
fuse_operations::rmdir
int(* rmdir)(const char *)
Definition: fuse.h:354
fuse_operations::flush
int(* flush)(const char *, struct fuse_file_info *)
Definition: fuse.h:507
fuse_operations::flock
int(* flock)(const char *, struct fuse_file_info *, int op)
Definition: fuse.h:779
fuse_operations::ioctl
int(* ioctl)(const char *, unsigned int cmd, void *arg, struct fuse_file_info *, unsigned int flags, void *data)
Definition: fuse.h:711
fuse_operations::readdir
int(* readdir)(const char *, void *, fuse_fill_dir_t, off_t, struct fuse_file_info *, enum fuse_readdir_flags)
Definition: fuse.h:574
fuse_operations::getxattr
int(* getxattr)(const char *, const char *, char *, size_t)
Definition: fuse.h:534
fuse_operations::bmap
int(* bmap)(const char *, size_t blocksize, uint64_t *idx)
Definition: fuse.h:689