aboutsummaryrefslogtreecommitdiff
path: root/src/cmd/9pfuse/a.h
diff options
context:
space:
mode:
Diffstat (limited to 'src/cmd/9pfuse/a.h')
-rw-r--r--src/cmd/9pfuse/a.h51
1 files changed, 51 insertions, 0 deletions
diff --git a/src/cmd/9pfuse/a.h b/src/cmd/9pfuse/a.h
new file mode 100644
index 00000000..c6e5b020
--- /dev/null
+++ b/src/cmd/9pfuse/a.h
@@ -0,0 +1,51 @@
+#include <u.h>
+#include <errno.h>
+#include <sys/uio.h>
+#include <sys/socket.h>
+#include <libc.h>
+#include <fcall.h>
+#include <thread.h>
+#include <9pclient.h>
+#include "fuse_kernel.h"
+
+/* Somehow the FUSE guys forgot to define this one! */
+struct fuse_create_out {
+ struct fuse_entry_out e;
+ struct fuse_open_out o;
+};
+
+typedef struct FuseMsg FuseMsg;
+struct FuseMsg
+{
+ FuseMsg *next;
+ uchar *buf;
+ int nbuf;
+ struct fuse_in_header *hdr; /* = buf */
+ void *tx; /* = hdr+1 */
+};
+
+extern int debug;
+
+extern int fusefd;
+extern int fuseeof;
+extern int fusebufsize;
+extern int fusemaxwrite;
+extern FuseMsg *fusemsglist;
+extern char *fusemtpt;
+
+void freefusemsg(FuseMsg *m);
+int fusefmt(Fmt*);
+void initfuse(char *mtpt);
+FuseMsg* readfusemsg(void);
+void replyfuse(FuseMsg *m, void *arg, int narg);
+void replyfuseerrno(FuseMsg *m, int e);
+void replyfuseerrstr(FuseMsg*);
+void request9p(Fcall *tx);
+
+void* emalloc(size_t n);
+void* erealloc(void *p, size_t n);
+char* estrdup(char *p);
+
+int errstr2errno(void);
+void unmountatexit(void);
+