+-
+-#include "fuse_compat.h"
+-
+-#ifndef __FreeBSD__
+-
+-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)
+-{
+- return fuse_setup_common(argc, argv, (struct fuse_operations *) op,
+- op_size, mountpoint, multithreaded, fd, NULL, 22);
+-}
+-
+-struct fuse *fuse_setup_compat2(int argc, char *argv[],
+- const struct fuse_operations_compat2 *op,
+- char **mountpoint, int *multithreaded,
+- int *fd)
+-{
+- return fuse_setup_common(argc, argv, (struct fuse_operations *) op,
+- sizeof(struct fuse_operations_compat2),
+- mountpoint, multithreaded, fd, NULL, 21);
+-}
+-
+-int fuse_main_real_compat22(int argc, char *argv[],
+- const struct fuse_operations_compat22 *op,
+- size_t op_size)
+-{
+- return fuse_main_common(argc, argv, (struct fuse_operations *) op, op_size,
+- NULL, 22);
+-}
+-
+-void fuse_main_compat1(int argc, char *argv[],
+- const struct fuse_operations_compat1 *op)
+-{
+- fuse_main_common(argc, argv, (struct fuse_operations *) op,
+- sizeof(struct fuse_operations_compat1), NULL, 11);
+-}
+-
+-int fuse_main_compat2(int argc, char *argv[],
+- const struct fuse_operations_compat2 *op)
+-{
+- return fuse_main_common(argc, argv, (struct fuse_operations *) op,
+- sizeof(struct fuse_operations_compat2), NULL, 21);
+-}
+-
+-int fuse_mount_compat1(const char *mountpoint, const char *args[])
+-{
+- /* just ignore mount args for now */
+- (void) args;
+- return fuse_mount_compat22(mountpoint, NULL);
+-}
+-
+-__asm__(".symver fuse_setup_compat2,__fuse_setup@");
+-__asm__(".symver fuse_setup_compat22,fuse_setup@FUSE_2.2");
+-__asm__(".symver fuse_teardown,__fuse_teardown@");
+-__asm__(".symver fuse_main_compat2,fuse_main@");
+-__asm__(".symver fuse_main_real_compat22,fuse_main_real@FUSE_2.2");
+-
+-#endif /* __FreeBSD__ */
+-
+-
+-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)
+-{
+- return fuse_setup_common(argc, argv, (struct fuse_operations *) op,
+- op_size, mountpoint, multithreaded, fd, NULL, 25);
+-}
+-
+-int fuse_main_real_compat25(int argc, char *argv[],
+- const struct fuse_operations_compat25 *op,
+- size_t op_size)
+-{
+- return fuse_main_common(argc, argv, (struct fuse_operations *) op, op_size,
+- NULL, 25);
+-}
+-
+-void fuse_teardown_compat22(struct fuse *fuse, int fd, char *mountpoint)
+-{
+- (void) fd;
+- fuse_teardown_common(fuse, mountpoint);
+-}
+-
+-int fuse_mount_compat25(const char *mountpoint, struct fuse_args *args)
+-{
+- return fuse_kern_mount(mountpoint, args);
+-}
+-
+-__asm__(".symver fuse_setup_compat25,fuse_setup@FUSE_2.5");
+-__asm__(".symver fuse_teardown_compat22,fuse_teardown@FUSE_2.2");
+-__asm__(".symver fuse_main_real_compat25,fuse_main_real@FUSE_2.5");
+-__asm__(".symver fuse_mount_compat25,fuse_mount@FUSE_2.5");
+Index: fuse-2.7.1/lib/mount.c