fix
diff --git a/include/fuse.h b/include/fuse.h
index a94c61a..3c3a98f 100644
--- a/include/fuse.h
+++ b/include/fuse.h
@@ -295,7 +295,7 @@
*
* Introduced in version 2.3
*/
- void *(*init) (void);
+ void *(*init) (struct fuse_conn_info *conn);
/**
* Clean up filesystem
@@ -535,13 +535,25 @@
* Compatibility stuff *
* ----------------------------------------------------------- */
-#ifndef __FreeBSD__
+#ifdef __FreeBSD__
+# if FUSE_USE_VERSION < 25
+# error On FreeBSD API version 25 or greater must be used
+# endif
+#endif
-#if FUSE_USE_VERSION == 22 || FUSE_USE_VERSION == 21 || FUSE_USE_VERSION == 11
+#if FUSE_USE_VERSION == 25 || FUSE_USE_VERSION == 22 || \
+ FUSE_USE_VERSION == 21 || FUSE_USE_VERSION == 11
# include "fuse_compat.h"
# undef FUSE_MINOR_VERSION
# undef fuse_main
-# if FUSE_USE_VERSION == 22
+# if FUSE_USE_VERSION == 25
+# define FUSE_MINOR_VERSION 6
+# define fuse_main(argc, argv, op) \
+ fuse_main_real_compat25(argc, argv, op, sizeof(*(op)))
+# define fuse_new fuse_new_compat25
+# define fuse_setup fuse_setup_compat25
+# define fuse_operations fuse_operations_compat25
+# elif FUSE_USE_VERSION == 22
# define FUSE_MINOR_VERSION 4
# define fuse_main(argc, argv, op) \
fuse_main_real_compat22(argc, argv, op, sizeof(*(op)))
@@ -549,13 +561,14 @@
# define fuse_setup fuse_setup_compat22
# define fuse_operations fuse_operations_compat22
# define fuse_file_info fuse_file_info_compat22
+# define fuse_mount fuse_mount_compat22
# else
# define fuse_dirfil_t fuse_dirfil_t_compat
# define __fuse_read_cmd fuse_read_cmd
# define __fuse_process_cmd fuse_process_cmd
# define __fuse_loop_mt fuse_loop_mt_proc
# if FUSE_USE_VERSION == 21
-# define FUSE_MAJOR_VERSION 2
+# define FUSE_MINOR_VERSION 1
# define fuse_operations fuse_operations_compat2
# define fuse_main fuse_main_compat2
# define fuse_new fuse_new_compat2
@@ -563,6 +576,7 @@
# define __fuse_teardown fuse_teardown
# define __fuse_exited fuse_exited
# define __fuse_set_getcontext_func fuse_set_getcontext_func
+# define fuse_mount fuse_mount_compat22
# else
# warning Compatibility with API version 11 is deprecated
# undef FUSE_MAJOR_VERSION
@@ -576,18 +590,10 @@
# define FUSE_DEBUG FUSE_DEBUG_COMPAT1
# endif
# endif
-#elif FUSE_USE_VERSION < 25
-# error Compatibility with API version other than 21, 22 and 11 not supported
+#elif FUSE_USE_VERSION < 27
+# error Compatibility with API version other than 21, 22, 25 and 11 not supported
#endif
-#else /* __FreeBSD__ */
-
-#if FUSE_USE_VERSION < 25
-# error On FreeBSD API version 25 or greater must be used
-#endif
-
-#endif /* __FreeBSD__ */
-
#ifdef __cplusplus
}
#endif