10 #include "fuse_lowlevel.h"
15 struct fuse_session *se;
22 unsigned int ioctl_64bit : 1;
32 struct fuse_req *next;
33 struct fuse_req *prev;
36 struct fuse_notify_req {
39 const void *,
const struct fuse_buf *);
40 struct fuse_notify_req *next;
41 struct fuse_notify_req *prev;
48 struct fuse_custom_io *io;
49 struct mount_opts *mo;
54 struct cuse_data *cuse_data;
59 struct fuse_req interrupts;
62 pthread_key_t pipe_key;
63 int broken_splice_nonblock;
65 struct fuse_notify_req notify_list;
87 struct fusemod_so *so;
99 #if FUSE_USE_VERSION >= FUSE_MAKE_VERSION(3, 12)
152 struct fuse_chan *fuse_chan_get(
struct fuse_chan *ch);
159 void fuse_chan_put(
struct fuse_chan *ch);
161 struct mount_opts *parse_mount_opts(
struct fuse_args *args);
162 void destroy_mount_opts(
struct mount_opts *mo);
163 void fuse_mount_version(
void);
164 unsigned get_max_read(
struct mount_opts *o);
165 void fuse_kern_unmount(
const char *mountpoint,
int fd);
166 int fuse_kern_mount(
const char *mountpoint,
struct mount_opts *mo);
168 int fuse_send_reply_iov_nofree(
fuse_req_t req,
int error,
struct iovec *iov,
174 int fuse_start_thread(pthread_t *thread_id,
void *(*func)(
void *),
void *arg);
176 int fuse_session_receive_buf_int(
struct fuse_session *se,
struct fuse_buf *buf,
177 struct fuse_chan *ch);
178 void fuse_session_process_buf_int(
struct fuse_session *se,
179 const struct fuse_buf *buf,
struct fuse_chan *ch);
182 size_t op_size,
void *private_data);
184 int fuse_session_loop_mt_312(
struct fuse_session *se,
struct fuse_loop_config *config);
194 #define FUSE_MAX_MAX_PAGES 256
195 #define FUSE_DEFAULT_MAX_PAGES_PER_REQ 32
198 #define FUSE_BUFFER_HEADER_SIZE 0x1000
struct fuse * fuse_new_31(struct fuse_args *args, const struct fuse_operations *op, size_t op_size, void *user_data)
struct fuse_fs *(* fuse_module_factory_t)(struct fuse_args *args, struct fuse_fs *fs[])
void(* fuse_interrupt_func_t)(fuse_req_t req, void *data)
struct fuse_req * fuse_req_t