Archived
14
0
Fork 0
This repository has been archived on 2022-02-17. You can view files and clone it, but cannot push or open issues or pull requests.
linux-2.6/fs/fuse
Tejun Heo 59efec7b90 fuse: implement ioctl support
Generic ioctl support is tricky to implement because only the ioctl
implementation itself knows which memory regions need to be read
and/or written.  To support this, fuse client can request retry of
ioctl specifying memory regions to read and write.  Deep copying
(nested pointers) can be implemented by retrying multiple times
resolving one depth of dereference at a time.

For security and cleanliness considerations, ioctl implementation has
restricted mode where the kernel determines data transfer directions
and sizes using the _IOC_*() macros on the ioctl command.  In this
mode, retry is not allowed.

For all FUSE servers, restricted mode is enforced.  Unrestricted ioctl
will be used by CUSE.

Plese read the comment on top of fs/fuse/file.c::fuse_file_do_ioctl()
for more information.

Signed-off-by: Tejun Heo <tj@kernel.org>
Signed-off-by: Miklos Szeredi <mszeredi@suse.cz>
2008-11-26 12:03:55 +01:00
..
control.c fuse: style fixes 2008-11-26 12:03:54 +01:00
dev.c fuse: don't let fuse_req->end() put the base reference 2008-11-26 12:03:54 +01:00
dir.c fuse: style fixes 2008-11-26 12:03:54 +01:00
file.c fuse: implement ioctl support 2008-11-26 12:03:55 +01:00
fuse_i.h fuse: style fixes 2008-11-26 12:03:54 +01:00
inode.c fuse: don't let fuse_req->end() put the base reference 2008-11-26 12:03:54 +01:00
Makefile [PATCH] fuse: add control filesystem 2006-06-25 10:01:19 -07:00