mirror of https://github.com/trapexit/mergerfs.git
Antonio SJ Musumeci
4 years ago
15 changed files with 24 additions and 1092 deletions
-
47libfuse/include/fuse.h
-
34libfuse/include/fuse_common.h
-
27libfuse/include/fuse_common_compat.h
-
197libfuse/include/fuse_compat.h
-
22libfuse/include/fuse_lowlevel.h
-
157libfuse/include/fuse_lowlevel_compat.h
-
9libfuse/include/old/fuse.h
-
246libfuse/lib/fuse.c
-
8libfuse/lib/fuse_i.h
-
150libfuse/lib/fuse_lowlevel.c
-
10libfuse/lib/fuse_opt.c
-
25libfuse/lib/fuse_session.c
-
113libfuse/lib/helper.c
-
49libfuse/lib/mount_bsd.c
-
18libfuse/lib/mount_generic.c
@ -1,27 +0,0 @@ |
|||||
/* |
|
||||
FUSE: Filesystem in Userspace |
|
||||
Copyright (C) 2001-2007 Miklos Szeredi <miklos@szeredi.hu> |
|
||||
|
|
||||
This program can be distributed under the terms of the GNU LGPLv2. |
|
||||
See the file COPYING.LIB. |
|
||||
*/ |
|
||||
|
|
||||
/* these definitions provide source compatibility to prior versions. |
|
||||
Do not include this file directly! */ |
|
||||
|
|
||||
struct fuse_file_info_compat |
|
||||
{ |
|
||||
int flags; |
|
||||
unsigned long fh; |
|
||||
int writepage; |
|
||||
unsigned int direct_io : 1; |
|
||||
unsigned int keep_cache : 1; |
|
||||
}; |
|
||||
|
|
||||
int fuse_mount_compat25(const char *mountpoint, struct fuse_args *args); |
|
||||
|
|
||||
int fuse_mount_compat22(const char *mountpoint, const char *opts); |
|
||||
|
|
||||
int fuse_mount_compat1(const char *mountpoint, const char *args[]); |
|
||||
|
|
||||
void fuse_unmount_compat22(const char *mountpoint); |
|
@ -1,197 +0,0 @@ |
|||||
/* |
|
||||
FUSE: Filesystem in Userspace |
|
||||
Copyright (C) 2001-2007 Miklos Szeredi <miklos@szeredi.hu> |
|
||||
|
|
||||
This program can be distributed under the terms of the GNU LGPLv2. |
|
||||
See the file COPYING.LIB. |
|
||||
*/ |
|
||||
|
|
||||
/* these definitions provide source compatibility to prior versions. |
|
||||
Do not include this file directly! */ |
|
||||
|
|
||||
struct fuse_operations_compat25 |
|
||||
{ |
|
||||
int (*getattr) (const char *, struct stat *); |
|
||||
int (*readlink) (const char *, char *, size_t); |
|
||||
int (*mknod) (const char *, mode_t, dev_t); |
|
||||
int (*mkdir) (const char *, mode_t); |
|
||||
int (*unlink) (const char *); |
|
||||
int (*rmdir) (const char *); |
|
||||
int (*symlink) (const char *, const char *); |
|
||||
int (*rename) (const char *, const char *); |
|
||||
int (*link) (const char *, const char *); |
|
||||
int (*chmod) (const char *, mode_t); |
|
||||
int (*chown) (const char *, uid_t, gid_t); |
|
||||
int (*truncate) (const char *, off_t); |
|
||||
int (*utime) (const char *, struct utimbuf *); |
|
||||
int (*open) (const char *, struct fuse_file_info *); |
|
||||
int (*read) (const char *, char *, size_t, off_t, |
|
||||
struct fuse_file_info *); |
|
||||
int (*write) (const char *, const char *, size_t, off_t, |
|
||||
struct fuse_file_info *); |
|
||||
int (*statfs) (const char *, struct statvfs *); |
|
||||
int (*flush) (const char *, struct fuse_file_info *); |
|
||||
int (*release) (const char *, struct fuse_file_info *); |
|
||||
int (*fsync) (const char *, int, struct fuse_file_info *); |
|
||||
int (*setxattr) (const char *, const char *, const char *, size_t, int); |
|
||||
int (*getxattr) (const char *, const char *, char *, size_t); |
|
||||
int (*listxattr) (const char *, char *, size_t); |
|
||||
int (*removexattr) (const char *, const char *); |
|
||||
int (*opendir) (const char *, struct fuse_file_info *); |
|
||||
int (*readdir) (const char *, void *, off_t, |
|
||||
struct fuse_file_info *); |
|
||||
int (*releasedir) (const char *, struct fuse_file_info *); |
|
||||
int (*fsyncdir) (const char *, int, struct fuse_file_info *); |
|
||||
void *(*init) (void); |
|
||||
void (*destroy) (void *); |
|
||||
int (*access) (const char *, int); |
|
||||
int (*create) (const char *, mode_t, struct fuse_file_info *); |
|
||||
int (*ftruncate) (const char *, off_t, struct fuse_file_info *); |
|
||||
int (*fgetattr) (const char *, struct stat *, struct fuse_file_info *); |
|
||||
}; |
|
||||
|
|
||||
struct fuse *fuse_new_compat25(int fd, struct fuse_args *args, |
|
||||
const struct fuse_operations_compat25 *op, |
|
||||
size_t op_size); |
|
||||
|
|
||||
int fuse_main_real_compat25(int argc, char *argv[], |
|
||||
const struct fuse_operations_compat25 *op, |
|
||||
size_t op_size); |
|
||||
|
|
||||
struct fuse *fuse_setup_compat25(int argc, char *argv[], |
|
||||
const struct fuse_operations_compat25 *op, |
|
||||
size_t op_size, char **mountpoint, |
|
||||
int *multithreaded, int *fd); |
|
||||
|
|
||||
void fuse_teardown_compat22(struct fuse *fuse, int fd, char *mountpoint); |
|
||||
|
|
||||
#if !defined(__FreeBSD__) && !defined(__NetBSD__) |
|
||||
#include <sys/statfs.h> |
|
||||
|
|
||||
struct fuse_operations_compat22 { |
|
||||
int (*getattr) (const char *, struct stat *); |
|
||||
int (*readlink) (const char *, char *, size_t); |
|
||||
int (*mknod) (const char *, mode_t, dev_t); |
|
||||
int (*mkdir) (const char *, mode_t); |
|
||||
int (*unlink) (const char *); |
|
||||
int (*rmdir) (const char *); |
|
||||
int (*symlink) (const char *, const char *); |
|
||||
int (*rename) (const char *, const char *); |
|
||||
int (*link) (const char *, const char *); |
|
||||
int (*chmod) (const char *, mode_t); |
|
||||
int (*chown) (const char *, uid_t, gid_t); |
|
||||
int (*truncate) (const char *, off_t); |
|
||||
int (*utime) (const char *, struct utimbuf *); |
|
||||
int (*open) (const char *, struct fuse_file_info_compat *); |
|
||||
int (*read) (const char *, char *, size_t, off_t, |
|
||||
struct fuse_file_info_compat *); |
|
||||
int (*write) (const char *, const char *, size_t, off_t, |
|
||||
struct fuse_file_info_compat *); |
|
||||
int (*statfs) (const char *, struct statfs *); |
|
||||
int (*flush) (const char *, struct fuse_file_info_compat *); |
|
||||
int (*release) (const char *, struct fuse_file_info_compat *); |
|
||||
int (*fsync) (const char *, int, struct fuse_file_info_compat *); |
|
||||
int (*setxattr) (const char *, const char *, const char *, size_t, int); |
|
||||
int (*getxattr) (const char *, const char *, char *, size_t); |
|
||||
int (*listxattr) (const char *, char *, size_t); |
|
||||
int (*removexattr) (const char *, const char *); |
|
||||
int (*opendir) (const char *, struct fuse_file_info_compat *); |
|
||||
int (*readdir) (const char *, void *, off_t, |
|
||||
struct fuse_file_info_compat *); |
|
||||
int (*releasedir) (const char *, struct fuse_file_info_compat *); |
|
||||
int (*fsyncdir) (const char *, int, struct fuse_file_info_compat *); |
|
||||
void *(*init) (void); |
|
||||
void (*destroy) (void *); |
|
||||
}; |
|
||||
|
|
||||
struct fuse *fuse_new_compat22(int fd, const char *opts, |
|
||||
const struct fuse_operations_compat22 *op, |
|
||||
size_t op_size); |
|
||||
|
|
||||
struct fuse *fuse_setup_compat22(int argc, char *argv[], |
|
||||
const struct fuse_operations_compat22 *op, |
|
||||
size_t op_size, char **mountpoint, |
|
||||
int *multithreaded, int *fd); |
|
||||
|
|
||||
int fuse_main_real_compat22(int argc, char *argv[], |
|
||||
const struct fuse_operations_compat22 *op, |
|
||||
size_t op_size); |
|
||||
|
|
||||
struct fuse_operations_compat2 { |
|
||||
int (*getattr) (const char *, struct stat *); |
|
||||
int (*readlink) (const char *, char *, size_t); |
|
||||
int (*mknod) (const char *, mode_t, dev_t); |
|
||||
int (*mkdir) (const char *, mode_t); |
|
||||
int (*unlink) (const char *); |
|
||||
int (*rmdir) (const char *); |
|
||||
int (*symlink) (const char *, const char *); |
|
||||
int (*rename) (const char *, const char *); |
|
||||
int (*link) (const char *, const char *); |
|
||||
int (*chmod) (const char *, mode_t); |
|
||||
int (*chown) (const char *, uid_t, gid_t); |
|
||||
int (*truncate) (const char *, off_t); |
|
||||
int (*utime) (const char *, struct utimbuf *); |
|
||||
int (*open) (const char *, int); |
|
||||
int (*read) (const char *, char *, size_t, off_t); |
|
||||
int (*write) (const char *, const char *, size_t, off_t); |
|
||||
int (*statfs) (const char *, struct statfs *); |
|
||||
int (*flush) (const char *); |
|
||||
int (*release) (const char *, int); |
|
||||
int (*fsync) (const char *, int); |
|
||||
int (*setxattr) (const char *, const char *, const char *, |
|
||||
size_t, int); |
|
||||
int (*getxattr) (const char *, const char *, char *, size_t); |
|
||||
int (*listxattr) (const char *, char *, size_t); |
|
||||
int (*removexattr) (const char *, const char *); |
|
||||
}; |
|
||||
|
|
||||
int fuse_main_compat2(int argc, char *argv[], |
|
||||
const struct fuse_operations_compat2 *op); |
|
||||
|
|
||||
struct fuse *fuse_new_compat2(int fd, const char *opts, |
|
||||
const struct fuse_operations_compat2 *op); |
|
||||
|
|
||||
struct fuse *fuse_setup_compat2(int argc, char *argv[], |
|
||||
const struct fuse_operations_compat2 *op, |
|
||||
char **mountpoint, int *multithreaded, int *fd); |
|
||||
|
|
||||
struct fuse_statfs_compat1 { |
|
||||
long block_size; |
|
||||
long blocks; |
|
||||
long blocks_free; |
|
||||
long files; |
|
||||
long files_free; |
|
||||
long namelen; |
|
||||
}; |
|
||||
|
|
||||
struct fuse_operations_compat1 { |
|
||||
int (*getattr) (const char *, struct stat *); |
|
||||
int (*readlink) (const char *, char *, size_t); |
|
||||
int (*mknod) (const char *, mode_t, dev_t); |
|
||||
int (*mkdir) (const char *, mode_t); |
|
||||
int (*unlink) (const char *); |
|
||||
int (*rmdir) (const char *); |
|
||||
int (*symlink) (const char *, const char *); |
|
||||
int (*rename) (const char *, const char *); |
|
||||
int (*link) (const char *, const char *); |
|
||||
int (*chmod) (const char *, mode_t); |
|
||||
int (*chown) (const char *, uid_t, gid_t); |
|
||||
int (*truncate) (const char *, off_t); |
|
||||
int (*utime) (const char *, struct utimbuf *); |
|
||||
int (*open) (const char *, int); |
|
||||
int (*read) (const char *, char *, size_t, off_t); |
|
||||
int (*write) (const char *, const char *, size_t, off_t); |
|
||||
int (*statfs) (struct fuse_statfs_compat1 *); |
|
||||
int (*release) (const char *, int); |
|
||||
int (*fsync) (const char *, int); |
|
||||
}; |
|
||||
|
|
||||
#define FUSE_DEBUG_COMPAT1 (1 << 1) |
|
||||
|
|
||||
struct fuse *fuse_new_compat1(int fd, int flags, |
|
||||
const struct fuse_operations_compat1 *op); |
|
||||
|
|
||||
void fuse_main_compat1(int argc, char *argv[], |
|
||||
const struct fuse_operations_compat1 *op); |
|
||||
|
|
||||
#endif /* __FreeBSD__ || __NetBSD__ */ |
|
@ -1,157 +0,0 @@ |
|||||
/* |
|
||||
FUSE: Filesystem in Userspace |
|
||||
Copyright (C) 2001-2007 Miklos Szeredi <miklos@szeredi.hu> |
|
||||
|
|
||||
This program can be distributed under the terms of the GNU LGPLv2. |
|
||||
See the file COPYING.LIB. |
|
||||
*/ |
|
||||
|
|
||||
/* these definitions provide source compatibility to prior versions. |
|
||||
Do not include this file directly! */ |
|
||||
|
|
||||
struct fuse_lowlevel_ops_compat25 |
|
||||
{ |
|
||||
void (*init) (void *userdata); |
|
||||
void (*destroy) (void *userdata); |
|
||||
void (*lookup) (fuse_req_t req, fuse_ino_t parent, const char *name); |
|
||||
void (*forget) (fuse_req_t req, fuse_ino_t ino, unsigned long nlookup); |
|
||||
void (*getattr) (fuse_req_t req, fuse_ino_t ino, |
|
||||
struct fuse_file_info *fi); |
|
||||
void (*setattr) (fuse_req_t req, fuse_ino_t ino, struct stat *attr, |
|
||||
int to_set, struct fuse_file_info *fi); |
|
||||
void (*readlink) (fuse_req_t req, fuse_ino_t ino); |
|
||||
void (*mknod) (fuse_req_t req, fuse_ino_t parent, const char *name, |
|
||||
mode_t mode, dev_t rdev); |
|
||||
void (*mkdir) (fuse_req_t req, fuse_ino_t parent, const char *name, |
|
||||
mode_t mode); |
|
||||
void (*unlink) (fuse_req_t req, fuse_ino_t parent, const char *name); |
|
||||
void (*rmdir) (fuse_req_t req, fuse_ino_t parent, const char *name); |
|
||||
void (*symlink) (fuse_req_t req, const char *link, fuse_ino_t parent, |
|
||||
const char *name); |
|
||||
void (*rename) (fuse_req_t req, fuse_ino_t parent, const char *name, |
|
||||
fuse_ino_t newparent, const char *newname); |
|
||||
void (*link) (fuse_req_t req, fuse_ino_t ino, fuse_ino_t newparent, |
|
||||
const char *newname); |
|
||||
void (*open) (fuse_req_t req, fuse_ino_t ino, |
|
||||
struct fuse_file_info *fi); |
|
||||
void (*read) (fuse_req_t req, fuse_ino_t ino, size_t size, off_t off, |
|
||||
struct fuse_file_info *fi); |
|
||||
void (*write) (fuse_req_t req, fuse_ino_t ino, const char *buf, |
|
||||
size_t size, off_t off, struct fuse_file_info *fi); |
|
||||
void (*flush) (fuse_req_t req, fuse_ino_t ino, |
|
||||
struct fuse_file_info *fi); |
|
||||
void (*release) (fuse_req_t req, fuse_ino_t ino, |
|
||||
struct fuse_file_info *fi); |
|
||||
void (*fsync) (fuse_req_t req, fuse_ino_t ino, int datasync, |
|
||||
struct fuse_file_info *fi); |
|
||||
void (*opendir) (fuse_req_t req, fuse_ino_t ino, |
|
||||
struct fuse_file_info *fi); |
|
||||
void (*readdir) (fuse_req_t req, fuse_ino_t ino, size_t size, off_t off, |
|
||||
struct fuse_file_info *fi); |
|
||||
void (*releasedir) (fuse_req_t req, fuse_ino_t ino, |
|
||||
struct fuse_file_info *fi); |
|
||||
void (*fsyncdir) (fuse_req_t req, fuse_ino_t ino, int datasync, |
|
||||
struct fuse_file_info *fi); |
|
||||
void (*statfs) (fuse_req_t req); |
|
||||
void (*setxattr) (fuse_req_t req, fuse_ino_t ino, const char *name, |
|
||||
const char *value, size_t size, int flags); |
|
||||
void (*getxattr) (fuse_req_t req, fuse_ino_t ino, const char *name, |
|
||||
size_t size); |
|
||||
void (*listxattr) (fuse_req_t req, fuse_ino_t ino, size_t size); |
|
||||
void (*removexattr) (fuse_req_t req, fuse_ino_t ino, const char *name); |
|
||||
void (*access) (fuse_req_t req, fuse_ino_t ino, int mask); |
|
||||
void (*create) (fuse_req_t req, fuse_ino_t parent, const char *name, |
|
||||
mode_t mode, struct fuse_file_info *fi); |
|
||||
}; |
|
||||
|
|
||||
struct fuse_session *fuse_lowlevel_new_compat25(struct fuse_args *args, |
|
||||
const struct fuse_lowlevel_ops_compat25 *op, |
|
||||
size_t op_size, void *userdata); |
|
||||
|
|
||||
size_t fuse_dirent_size(size_t namelen); |
|
||||
|
|
||||
char *fuse_add_dirent(char *buf, const char *name, const struct stat *stbuf, |
|
||||
off_t off); |
|
||||
|
|
||||
#if !defined(__FreeBSD__) && !defined(__NetBSD__) |
|
||||
|
|
||||
#include <sys/statfs.h> |
|
||||
|
|
||||
struct fuse_lowlevel_ops_compat |
|
||||
{ |
|
||||
void (*init) (void *userdata); |
|
||||
void (*destroy) (void *userdata); |
|
||||
void (*lookup) (fuse_req_t req, fuse_ino_t parent, const char *name); |
|
||||
void (*forget) (fuse_req_t req, fuse_ino_t ino, unsigned long nlookup); |
|
||||
void (*getattr) (fuse_req_t req, fuse_ino_t ino, |
|
||||
struct fuse_file_info_compat *fi); |
|
||||
void (*setattr) (fuse_req_t req, fuse_ino_t ino, struct stat *attr, |
|
||||
int to_set, struct fuse_file_info_compat *fi); |
|
||||
void (*readlink) (fuse_req_t req, fuse_ino_t ino); |
|
||||
void (*mknod) (fuse_req_t req, fuse_ino_t parent, const char *name, |
|
||||
mode_t mode, dev_t rdev); |
|
||||
void (*mkdir) (fuse_req_t req, fuse_ino_t parent, const char *name, |
|
||||
mode_t mode); |
|
||||
void (*unlink) (fuse_req_t req, fuse_ino_t parent, const char *name); |
|
||||
void (*rmdir) (fuse_req_t req, fuse_ino_t parent, const char *name); |
|
||||
void (*symlink) (fuse_req_t req, const char *link, fuse_ino_t parent, |
|
||||
const char *name); |
|
||||
void (*rename) (fuse_req_t req, fuse_ino_t parent, const char *name, |
|
||||
fuse_ino_t newparent, const char *newname); |
|
||||
void (*link) (fuse_req_t req, fuse_ino_t ino, fuse_ino_t newparent, |
|
||||
const char *newname); |
|
||||
void (*open) (fuse_req_t req, fuse_ino_t ino, |
|
||||
struct fuse_file_info_compat *fi); |
|
||||
void (*read) (fuse_req_t req, fuse_ino_t ino, size_t size, off_t off, |
|
||||
struct fuse_file_info_compat *fi); |
|
||||
void (*write) (fuse_req_t req, fuse_ino_t ino, const char *buf, |
|
||||
size_t size, off_t off, struct fuse_file_info_compat *fi); |
|
||||
void (*flush) (fuse_req_t req, fuse_ino_t ino, |
|
||||
struct fuse_file_info_compat *fi); |
|
||||
void (*release) (fuse_req_t req, fuse_ino_t ino, |
|
||||
struct fuse_file_info_compat *fi); |
|
||||
void (*fsync) (fuse_req_t req, fuse_ino_t ino, int datasync, |
|
||||
struct fuse_file_info_compat *fi); |
|
||||
void (*opendir) (fuse_req_t req, fuse_ino_t ino, |
|
||||
struct fuse_file_info_compat *fi); |
|
||||
void (*readdir) (fuse_req_t req, fuse_ino_t ino, size_t size, off_t off, |
|
||||
struct fuse_file_info_compat *fi); |
|
||||
void (*releasedir) (fuse_req_t req, fuse_ino_t ino, |
|
||||
struct fuse_file_info_compat *fi); |
|
||||
void (*fsyncdir) (fuse_req_t req, fuse_ino_t ino, int datasync, |
|
||||
struct fuse_file_info_compat *fi); |
|
||||
void (*statfs) (fuse_req_t req); |
|
||||
void (*setxattr) (fuse_req_t req, fuse_ino_t ino, const char *name, |
|
||||
const char *value, size_t size, int flags); |
|
||||
void (*getxattr) (fuse_req_t req, fuse_ino_t ino, const char *name, |
|
||||
size_t size); |
|
||||
void (*listxattr) (fuse_req_t req, fuse_ino_t ino, size_t size); |
|
||||
void (*removexattr) (fuse_req_t req, fuse_ino_t ino, const char *name); |
|
||||
void (*access) (fuse_req_t req, fuse_ino_t ino, int mask); |
|
||||
void (*create) (fuse_req_t req, fuse_ino_t parent, const char *name, |
|
||||
mode_t mode, struct fuse_file_info_compat *fi); |
|
||||
}; |
|
||||
|
|
||||
int fuse_reply_statfs_compat(fuse_req_t req, const struct statfs *stbuf); |
|
||||
|
|
||||
int fuse_reply_open_compat(fuse_req_t req, |
|
||||
const struct fuse_file_info_compat *fi); |
|
||||
|
|
||||
struct fuse_session *fuse_lowlevel_new_compat(const char *opts, |
|
||||
const struct fuse_lowlevel_ops_compat *op, |
|
||||
size_t op_size, void *userdata); |
|
||||
|
|
||||
#endif /* __FreeBSD__ || __NetBSD__ */ |
|
||||
|
|
||||
struct fuse_chan_ops_compat24 { |
|
||||
int (*receive)(struct fuse_chan *ch, char *buf, size_t size); |
|
||||
int (*send)(struct fuse_chan *ch, const struct iovec iov[], |
|
||||
size_t count); |
|
||||
void (*destroy)(struct fuse_chan *ch); |
|
||||
}; |
|
||||
|
|
||||
struct fuse_chan *fuse_chan_new_compat24(struct fuse_chan_ops_compat24 *op, |
|
||||
int fd, size_t bufsize, void *data); |
|
||||
|
|
||||
int fuse_chan_receive(struct fuse_chan *ch, char *buf, size_t size); |
|
||||
struct fuse_chan *fuse_kern_chan_new(int fd); |
|
@ -1,9 +0,0 @@ |
|||||
/* |
|
||||
This header is for compatibility with older software using FUSE. |
|
||||
|
|
||||
Please use 'pkg-config --cflags fuse' to set include path. The |
|
||||
correct usage is still '#include <fuse.h>', not '#include |
|
||||
<fuse/fuse.h>'. |
|
||||
*/ |
|
||||
|
|
||||
#include "fuse/fuse.h" |
|
Write
Preview
Loading…
Cancel
Save
Reference in new issue