5 #ifndef CVMFS_DUPLEX_FUSE_H_
6 #define CVMFS_DUPLEX_FUSE_H_
10 #include <sys/types.h>
11 #define FUSE_VERSION 29
12 #define FUSE_ROOT_ID 1
14 typedef unsigned long fuse_ino_t;
19 struct fuse_lowlevel_ops {
22 enum fuse_expire_flags {
23 FUSE_LL_EXPIRE_ONLY = (1 << 0),
28 extern unsigned fuse_lowlevel_notify_inval_inode_cnt;
29 extern unsigned fuse_lowlevel_notify_inval_entry_cnt;
30 static int __attribute__((used)) fuse_lowlevel_notify_inval_inode(
31 void *,
unsigned , off_t, off_t)
33 fuse_lowlevel_notify_inval_inode_cnt++;
36 static int __attribute__((used)) fuse_lowlevel_notify_inval_entry(
37 struct fuse_chan *, fuse_ino_t, const
char *,
size_t)
39 fuse_lowlevel_notify_inval_entry_cnt++;
43 #define CVMFS_USE_LIBFUSE 2
44 #else // CVMFS_LIBCVMFS
45 #ifndef CVMFS_USE_LIBFUSE
46 #error "Build system error: CVMFS_USE_LIBFUSE unset"
49 #if CVMFS_USE_LIBFUSE == 2
50 #define FUSE_USE_VERSION 26
51 #include <fuse/fuse_lowlevel.h>
52 #include <fuse/fuse_opt.h>
53 #if (FUSE_VERSION < 28)
56 static int __attribute__((used)) fuse_lowlevel_notify_inval_entry(
57 void *,
unsigned long, const
char *,
size_t)
61 static int __attribute__((used)) fuse_lowlevel_notify_inval_inode(
62 void *, fuse_ino_t, off_t, off_t)
67 #endif // FUSE_VERSION < 28
70 #ifdef CVMFS_ENABLE_FUSE3_LOOP_CONFIG
71 #define FUSE_USE_VERSION 312
73 #define FUSE_USE_VERSION 31
75 #include <fuse3/fuse.h>
76 #include <fuse3/fuse_lowlevel.h>
77 #include <fuse3/fuse_opt.h>
81 #endif // CVMFS_DUPLEX_FUSE_H_
struct cvmcache_object_info __attribute__