aboutsummaryrefslogtreecommitdiffstats
path: root/include
diff options
context:
space:
mode:
authorMiklos Szeredi <miklos@szeredi.hu>2005-09-09 13:10:27 -0700
committerLinus Torvalds <torvalds@g5.osdl.org>2005-09-09 14:03:44 -0700
commit334f485df85ac7736ebe14940bf0a059c5f26d7d (patch)
tree754e5528289048a7104f4c1b431cebc1df16e2ce /include
parentd8a5ba45457e4a22aa39c939121efd7bb6c76672 (diff)
downloadkernel_samsung_smdk4412-334f485df85ac7736ebe14940bf0a059c5f26d7d.zip
kernel_samsung_smdk4412-334f485df85ac7736ebe14940bf0a059c5f26d7d.tar.gz
kernel_samsung_smdk4412-334f485df85ac7736ebe14940bf0a059c5f26d7d.tar.bz2
[PATCH] FUSE - device functions
This adds the FUSE device handling functions. This contains the following files: o dev.c - fuse device operations (read, write, release, poll) - registers misc device - support for sending requests to userspace Signed-off-by: Miklos Szeredi <miklos@szeredi.hu> Signed-off-by: Adrian Bunk <bunk@stusta.de> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
Diffstat (limited to 'include')
-rw-r--r--include/linux/fuse.h36
1 files changed, 35 insertions, 1 deletions
diff --git a/include/linux/fuse.h b/include/linux/fuse.h
index 2b1f4ae..a1aebd7 100644
--- a/include/linux/fuse.h
+++ b/include/linux/fuse.h
@@ -11,7 +11,7 @@
#include <asm/types.h>
/** Version number of this interface */
-#define FUSE_KERNEL_VERSION 5
+#define FUSE_KERNEL_VERSION 6
/** Minor version number of this interface */
#define FUSE_KERNEL_MINOR_VERSION 1
@@ -19,6 +19,12 @@
/** The node ID of the root inode */
#define FUSE_ROOT_ID 1
+/** The major number of the fuse character device */
+#define FUSE_MAJOR 10
+
+/** The minor number of the fuse character device */
+#define FUSE_MINOR 229
+
struct fuse_attr {
__u64 ino;
__u64 size;
@@ -36,3 +42,31 @@ struct fuse_attr {
__u32 rdev;
};
+enum fuse_opcode {
+ FUSE_INIT = 26
+};
+
+/* Conservative buffer size for the client */
+#define FUSE_MAX_IN 8192
+
+struct fuse_init_in_out {
+ __u32 major;
+ __u32 minor;
+};
+
+struct fuse_in_header {
+ __u32 len;
+ __u32 opcode;
+ __u64 unique;
+ __u64 nodeid;
+ __u32 uid;
+ __u32 gid;
+ __u32 pid;
+};
+
+struct fuse_out_header {
+ __u32 len;
+ __s32 error;
+ __u64 unique;
+};
+