diff --git a/lib/fuse.c b/lib/fuse.c
index b93ded3..79ce5e7 100644
--- a/lib/fuse.c
+++ b/lib/fuse.c
@@ -6,7 +6,12 @@
     See the file COPYING.LIB
 */
 
-#include "fuse_i.h"
+
+/* For pthread_rwlock_t */
+#define _GNU_SOURCE
+
+#include "fuse.h"
+#include "fuse_lowlevel.h"
 #include "fuse_compat.h"
 
 #include <stdio.h>
@@ -17,6 +22,7 @@
 #include <errno.h>
 #include <assert.h>
 #include <stdint.h>
+#include <pthread.h>
 #include <sys/param.h>
 #include <sys/uio.h>
 
@@ -53,6 +59,26 @@
 #define ENTRY_REVALIDATE_TIME 1.0 /* sec */
 #define ATTR_REVALIDATE_TIME 1.0 /* sec */
 
+struct fuse {
+    struct fuse_ll *fll;
+    int flags;
+    struct fuse_operations op;
+    int compat;
+    struct node **name_table;
+    size_t name_table_size;
+    struct node **id_table;
+    size_t id_table_size;
+    fuse_ino_t ctr;
+    unsigned int generation;
+    unsigned int hidectr;
+    pthread_mutex_t lock;
+    pthread_rwlock_t tree_lock;
+    void *user_data;
+    uid_t uid;
+    gid_t gid;
+    mode_t umask;
+};
+
 struct node {
     struct node *name_next;
     struct node *id_next;
@@ -1626,6 +1652,11 @@
     fuse_getcontext = func;
 }
 
+struct fuse_ll *fuse_get_lowlevel(struct fuse *f)
+{
+    return f->fll;
+}
+
 static int begins_with(const char *s, const char *beg)
 {
     if (strncmp(s, beg, strlen(beg)) == 0)
