[PATCH] FUSE: atomic create+open
This patch adds an atomic create+open operation. This does not yet work if
the file type changes between lookup and create+open, but solves the
permission checking problems for the separte create and open methods.
Signed-off-by: Miklos Szeredi <miklos@szeredi.hu>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
diff --git a/include/linux/fuse.h b/include/linux/fuse.h
index 507913b..45c398f 100644
--- a/include/linux/fuse.h
+++ b/include/linux/fuse.h
@@ -100,7 +100,8 @@
FUSE_READDIR = 28,
FUSE_RELEASEDIR = 29,
FUSE_FSYNCDIR = 30,
- FUSE_ACCESS = 34
+ FUSE_ACCESS = 34,
+ FUSE_CREATE = 35
};
/* Conservative buffer size for the client */
@@ -158,7 +159,7 @@
struct fuse_open_in {
__u32 flags;
- __u32 padding;
+ __u32 mode;
};
struct fuse_open_out {