tags 590274 +patch
--
Hi,
this problem is partial reincarnation of #552600, #528537.
Attached please find patch, it would be really nice
if you could get it included by upstream.
Petr
only in patch2:
unchanged:
--- fuse-2.8.4.orig/include/fuse_common.h
+++ fuse-2.8.4/include/fuse_common.h
@@ -261,7 +261,7 @@
* ----------------------------------------------------------- */
#if FUSE_USE_VERSION < 26
-# ifdef __FreeBSD__
+# if defined(__FreeBSD__) || defined(__FreeBSD_kernel__)
# if FUSE_USE_VERSION < 25
# error On FreeBSD API version 25 or greater must be used
# endif
only in patch2:
unchanged:
--- fuse-2.8.4.orig/include/fuse_lowlevel_compat.h
+++ fuse-2.8.4/include/fuse_lowlevel_compat.h
@@ -72,7 +72,7 @@
char *fuse_add_dirent(char *buf, const char *name, const struct stat *stbuf,
off_t off);
-#ifndef __FreeBSD__
+#if !defined(__FreeBSD__) && !defined(__FreeBSD_kernel__)
#include <sys/statfs.h>
only in patch2:
unchanged:
--- fuse-2.8.4.orig/include/fuse_compat.h
+++ fuse-2.8.4/include/fuse_compat.h
@@ -65,7 +65,7 @@
void fuse_teardown_compat22(struct fuse *fuse, int fd, char *mountpoint);
-#ifndef __FreeBSD__
+#if !defined(__FreeBSD__) && !defined(__FreeBSD_kernel__)
#include <sys/statfs.h>
struct fuse_operations_compat22 {
only in patch2:
unchanged:
--- fuse-2.8.4.orig/lib/fuse_session.c
+++ fuse-2.8.4/lib/fuse_session.c
@@ -200,6 +200,6 @@
free(ch);
}
-#ifndef __FreeBSD__
+#if !defined(__FreeBSD__) && !defined(__FreeBSD_kernel__)
FUSE_SYMVER(".symver fuse_chan_new_compat24,fuse_chan_...@fuse_2.4");
#endif
only in patch2:
unchanged:
--- fuse-2.8.4.orig/lib/fuse.c
+++ fuse-2.8.4/lib/fuse.c
@@ -954,7 +954,7 @@
fuse_do_prepare_interrupt(req, d);
}
-#ifndef __FreeBSD__
+#if !defined(__FreeBSD__) && !defined(__FreeBSD_kernel__)
static int fuse_compat_open(struct fuse_fs *fs, const char *path,
struct fuse_file_info *fi)
@@ -3721,7 +3721,7 @@
if (!f->conf.ac_attr_timeout_set)
f->conf.ac_attr_timeout = f->conf.attr_timeout;
-#ifdef __FreeBSD__
+#if defined(__FreeBSD__) || defined(__FreeBSD_kernel__)
/*
* In FreeBSD, we always use these settings as inode numbers
* are needed to make getcwd(3) work.
@@ -3897,7 +3897,7 @@
fuse_modules = mod;
}
-#ifndef __FreeBSD__
+#if !defined(__FreeBSD__) && !defined(__FreeBSD_kernel__)
static struct fuse *fuse_new_common_compat(int fd, const char *opts,
const struct fuse_operations *op,
only in patch2:
unchanged:
--- fuse-2.8.4.orig/lib/helper.c
+++ fuse-2.8.4/lib/helper.c
@@ -357,7 +357,7 @@
#include "fuse_compat.h"
-#ifndef __FreeBSD__
+#if !defined(__FreeBSD__) && !defined(__FreeBSD_kernel__)
struct fuse *fuse_setup_compat22(int argc, char *argv[],
const struct fuse_operations_compat22 *op,
only in patch2:
unchanged:
--- fuse-2.8.4.orig/lib/fuse_lowlevel.c
+++ fuse-2.8.4/lib/fuse_lowlevel.c
@@ -1734,7 +1734,7 @@
}
#endif
-#ifndef __FreeBSD__
+#if !defined(__FreeBSD__) && !defined(__FreeBSD_kernel__)
static void fill_open_compat(struct fuse_open_out *arg,
const struct fuse_file_info_compat *f)