28 struct fuse_session *se;
35 unsigned int ioctl_64bit : 1;
45 struct fuse_req *next;
46 struct fuse_req *prev;
49struct fuse_notify_req {
52 const void *,
const struct fuse_buf *);
53 struct fuse_notify_req *next;
54 struct fuse_notify_req *prev;
58 _Atomic(
char *)mountpoint;
61 struct fuse_custom_io *io;
62 struct mount_opts *mo;
67 struct cuse_data *cuse_data;
72 struct fuse_req interrupts;
75 pthread_key_t pipe_key;
76 int broken_splice_nonblock;
78 struct fuse_notify_req notify_list;
79 _Atomic
size_t bufsize;
95 uint64_t conn_want_ext;
115 struct fusemod_so *so;
127#if FUSE_USE_VERSION >= FUSE_MAKE_VERSION(3, 12)
180struct fuse_chan *fuse_chan_get(
struct fuse_chan *ch);
187void fuse_chan_put(
struct fuse_chan *ch);
189struct mount_opts *parse_mount_opts(
struct fuse_args *args);
190void destroy_mount_opts(
struct mount_opts *mo);
191void fuse_mount_version(
void);
192unsigned get_max_read(
struct mount_opts *o);
193void fuse_kern_unmount(
const char *mountpoint,
int fd);
194int fuse_kern_mount(
const char *mountpoint,
struct mount_opts *mo);
196int fuse_send_reply_iov_nofree(
fuse_req_t req,
int error,
struct iovec *iov,
202int fuse_start_thread(pthread_t *thread_id,
void *(*func)(
void *),
void *arg);
204void fuse_buf_free(
struct fuse_buf *buf);
206int fuse_session_receive_buf_internal(
struct fuse_session *se,
208 struct fuse_chan *ch);
209void fuse_session_process_buf_internal(
struct fuse_session *se,
211 struct fuse_chan *ch);
214 size_t op_size,
void *private_data);
216int fuse_session_loop_mt_312(
struct fuse_session *se,
struct fuse_loop_config *config);
232#define FUSE_DEFAULT_MAX_PAGES_LIMIT 256
233#define FUSE_DEFAULT_MAX_PAGES_PER_REQ 32
236#define FUSE_BUFFER_HEADER_SIZE 0x1000
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