diff options
Diffstat (limited to 'src/cmd/9pfuse/a.h')
-rw-r--r-- | src/cmd/9pfuse/a.h | 51 |
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); + |