aboutsummaryrefslogtreecommitdiffstats
path: root/lib/fuse_lowlevel.c
AgeCommit message (Collapse)AuthorLines
2011-05-19Fix ioctl ABIMiklos Szeredi-10/+72
Fix the ambiguity of ioctl ABI on the kernel/userspace boundary for 32bit vs. 64bit userspace
2011-05-19Add ->forget_multi() operationMiklos Szeredi-2/+7
Add ->forget_multi() operation to the lowlevel API. The filesystem may implement this to process multiple forget requests in one call
2011-05-19Allow batching of forget requestsMiklos Szeredi-9/+52
This allows forget requests to be processed faster and doesn't require a modification to fuse filesystems. Reported by Terje Malmedal
2011-05-19Fix splice_readMiklos Szeredi-2/+1
2011-05-19Disable splice by defaultMiklos Szeredi-6/+16
Disable splice by default, add "splice_read", "splice_write" and "splice_move" options. Keep the "no_splice_*" variants, which can disable splice even if the filesystem explicitly enables it.
2010-11-10store fuse_buf inside fuse_bufvecMiklos Szeredi-71/+51
Store the first fuse_buf inside fuse_bufvec. This makes initialization of fuse_bufvec simpler for the common case of a single fuse_buf. If multiple fuse_buf's are needed then fuse_bufvec needs to be dynamically allocated.
2010-11-08libfuse: add retrieve requestMiklos Szeredi-3/+152
Retrieve data stored in the kernel buffers for a given inode.
2010-11-08fix pipe cleanup in do_write_buf()Miklos Szeredi-2/+4
2010-11-08Add ctx->pid to debug outputMiklos Szeredi-2/+2
2010-11-08libfuse: add store requestMiklos Szeredi-83/+121
Request data to be stored in the kernel buffers for a given inode.
2010-11-08libfuse: support zero copy writes in lowlevel interfaceMiklos Szeredi-20/+272
Add new ->write_buf() method to low level interface. This allows passig a generic buffer, either containing a memory buffer or a file descriptor. This allows implementing zero copy writes. Add fuse_session_receive_buf() and fuse_session_process_buf() which may be used in event loop implementations to replace fuse_chan_recv() and fuse_session_process() respectively.
2010-08-27Add NetBSD supportMiklos Szeredi-3/+5
The bulk of it is just about adding ifdef __NetBSD__ where there is already an ifdef __FreeBSD__ Add a arch=netbsd to deal with NetBSD specifics. I suggests that arch=bsd could be renamed to arch=freebsd NetBSD specific linking with -lperfuse NetBSD patches to lib/mount.c. It turned to be less itrusive to patch mount;c than mount_bsd.c. I suggest mount_bsd.c could be renamed to mount_freebsd.c Patch from Emmanuel Dreyfus
2010-07-12libfuse: add buffer interfaceMiklos Szeredi-33/+201
Add a generic buffer interface for use with I/O. Buffer vectors are supplied and each buffer in the vector may be a memory pointer or a file descriptor. The fuse_reply_fd() interface is converted to using buffers.
2010-06-23* Make the number of max background requests and congestionMiklos Szeredi-0/+22
threshold tunable.
2010-06-17Add fuse_reply_fd() reply function to the low level interfaceMiklos Szeredi-6/+212
2010-01-14* Fix compile error on FreeBSD. Patch by Jay SullivanMiklos Szeredi-1/+1
2009-08-18* Add missing fuse_session_data to versionscriptMiklos Szeredi-8/+9
* Make sure all global symbols are prefixed with "fuse_" or "cuse_" * Released 2.8.0
2009-07-16* Clarify how the protocol version should be negotiated betweenMiklos Szeredi-5/+12
kernel and userspace. Notably libfuse didn't correctly handle the case when the supported major versions didn't match
2009-07-02* The context is extended with a 'umask' field. The umask is sentMiklos Szeredi-3/+85
for mknod, mkdir and create requests by linux kernel version 2.6.31 or later, otherwise the umask is set to zero. Also introduce a new feature flag: FUSE_CAP_DONT_MASK. If the kernel supports this feature, then this flag will be set in conn->capable in the ->init() method. If the filesystem sets this flag in in conn->want, then the create modes will not be masked. * Add low level interfaces for lookup cache and attribute invalidation. This feature is available in linux kernels 2.6.31 or later. Patch by John Muir * Kernel interface version is now 7.12
2009-06-19Add fuse_getgroups (high level lib) and fuse_req_getgroups (lowMiklos Szeredi-0/+68
level lib) functions to query the supplementary group IDs for the current request. Currently this is implemented on Linux by reading from the /proc filesystem.
2009-06-18CUSE patches from Tejun Heo (add new files)Miklos Szeredi-2/+4
2009-06-18CUSE patches from Tejun HeoMiklos Szeredi-65/+71
2009-05-25Add FUSE_CAP_EXPORT_SUPPORT to fuse_common.hMiklos Szeredi-0/+4
2008-12-08* Add missing setattr flags to <fuse_lowlevel.h>.Miklos Szeredi-0/+10
* Only pass valid flags to ->setattr().
2008-12-08* Implement poll support. Patch by Tejun HeoMiklos Szeredi-0/+86
2008-12-05* Implement ioctl support. On high level interface onlyMiklos Szeredi-0/+72
"restricted" ioctls are supported (which are defined with the _IO(), _IOR(), _IOW() or _IOWR() macros). Unrestricted ioctls will only be allwed to CUSE (Character Device in Userspace) servers. Patch by Tejun Heo
2008-11-28If open sets fi->nonseekable, libfuse will tell the kernel that the file is ↵Miklos Szeredi-0/+2
not seekable. Patch by Tejun Heo
2008-11-27lowlevel lib: fix deadlock if fuse_reply_* is called from theinterrupt ↵Miklos Szeredi-6/+10
handling function. Reported by Tero Marttila
2008-10-14Pass current file flags to read and write operationsMiklos Szeredi-2/+9
2008-06-09Don't allow bigger than 4kB writes by default...Miklos Szeredi-9/+29
2008-04-09Update warning message for missing newline at end of fuse.confMiklos Szeredi-5/+12
2008-04-06Highlevel lib: don't limit paths to 4095 charactersMiklos Szeredi-0/+3
2008-02-08Support the st_blksize field in struct statMiklos Szeredi-10/+17
2008-02-08Add support for atomic open(O_TRUNC)Miklos Szeredi-4/+12
2008-02-08Support receiving file handle from kernel in GETATTR request; Allow ↵Miklos Szeredi-2/+14
operations with a NULL path argument, if the filesystem supports it
2008-02-08Update kernel interface to 7.9Miklos Szeredi-1/+7
2007-12-12change indentingMiklos Szeredi-891/+900
2007-12-12Disable old symbol versions if __UCLIBC__ is definedMiklos Szeredi-4/+4
2007-10-16Clarify licence version to be "LGPLv2" for the libraryMiklos Szeredi-1/+1
2007-09-05lib/fuse_lowlevel.c: fix a fuse_req leak in do_forget()Miklos Szeredi-0/+2
2007-06-18Send debug output to stderr instead of stdoutMiklos Szeredi-26/+18
2007-05-23lowlevel lib: add fuse_reply_iov function...Miklos Szeredi-11/+35
2007-04-25update copyright datesMiklos Szeredi-1/+1
2007-02-03Add filesystem stacking support to high level APIMiklos Szeredi-9/+5
2006-12-04build fixesMiklos Szeredi-5/+5
2006-11-11fixesMiklos Szeredi-0/+7
2006-10-08Add DESTROY messageMiklos Szeredi-2/+20
2006-10-01Add support for FLUSH+RELEASE operationMiklos Szeredi-0/+4
2006-09-30API changesMiklos Szeredi-7/+8
2006-09-30bmap supportMiklos Szeredi-0/+21