aboutsummaryrefslogtreecommitdiffstats
path: root/lib
AgeCommit message (Collapse)AuthorLines
2011-05-25Spell checking comments, etc...Reuben Hawkins-1/+1
...with the help of vim :set spell modified: FAQ modified: include/fuse.h modified: include/fuse_common.h modified: include/fuse_opt.h modified: lib/fuse_kern_chan.c modified: util/fusermount.c
2011-05-19Fix ioctl ABIMiklos Szeredi-10/+73
Fix the ambiguity of ioctl ABI on the kernel/userspace boundary for 32bit vs. 64bit userspace
2011-05-19Add ->forget_multi() operationMiklos Szeredi-6/+29
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-12/+59
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/+19
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.
2011-05-19Don't hide output of /bin/mountMiklos Szeredi-10/+0
2011-04-15libfuse: Added support for auto_unmount optionMax Krasnyansky-8/+27
This change adds support for "auto_unmount" option to libfuse. auto_umount option unmounts the fs automatically on application termination, whether normal or not (segfault, etc). When auto_unmount option is specified libfuse will alway use fusermount for mounting the fs. This change is selfcontained but for complete functionaly it requires auto_unmount support in fusermount tool.
2011-03-30Fix a potential null pointer dereference issueLaszlo Papp-1/+2
2011-03-30Fix a potential resource leak (newargv)Laszlo Papp-2/+7
2011-03-30Initialize an allocated, but uninitialized memoryLaszlo Papp-1/+1
2011-03-30Initialize the variable properly before passing to any functionLaszlo Papp-0/+1
2011-03-30Remove unnecessary variable assignmentMiklos Szeredi-1/+0
2011-03-30Fix use after free if fuse_reply...() returned ENOENTMiklos Szeredi-6/+0
2011-03-30Fix a possible resource leak (free the old up)Laszlo Papp-0/+4
2011-03-30Fix a potential resource leakLaszlo Papp-1/+3
2011-03-30Use the return value for error checkLaszlo Papp-3/+2
2011-03-30Check the return value after an open syscallLaszlo Papp-2/+4
2011-03-30Check the negative return value after an open syscallLaszlo Papp-2/+4
2011-02-17Add -onoforget to help outputMiklos Szeredi-0/+1
2011-02-02libfuse: fuse_session_loop_mt() shouldn't pause when exiting worker threadsMiklos Szeredi-2/+0
In fuse_session_loop_mt() don't pause when exiting the worker threads. The pause() was added in 2.2.1 to prevent segfault on pthread_cancel() on an exited, detached thread. Now worker threads are not detached and pthread_cancel() should work fine even after the thread exited. Reported by Boris Protopopov
2011-01-31fusermount: only allow mount and umount if util-linux suppports ↵Miklos Szeredi-71/+1
--no-canonicalize Remove "legacy" util-linux support as missing --no-canonicalize cannot be worked around in fuse.
2011-01-31Fix warning in hash calculationMiklos Szeredi-1/+1
Fix the following warning: fuse.c:436: warning: this decimal constant is unsigned only in ISO C90
2010-12-20Highlevel lib: add slab allocation for node cacheMiklos Szeredi-9/+180
This will allow the memory used by the filesystem to grow and shrink depending on how many inodes are currently cached.
2010-12-20inline short namesMiklos Szeredi-13/+16
In the high level library store names shorter than 32 characters inside "struct node". Longer names are allocated as previously.
2010-12-20Highlevel lib: allow hash tables to shrinkMiklos Szeredi-1/+77
Allow hash tables to shrink as well as grow.
2010-12-13Highlevel lib: use dynamically resized hash tableMiklos Szeredi-43/+153
Use dynamically resized hash table for looking up by name and node ID. The chosen implementation is linear hashing, which features gradual rehashing when while the size of the table increases.
2010-11-10add read_buf method to high level APIMiklos Szeredi-31/+82
Add a new read_buf() method to the highlevel API. This allows returning a generic buffer from the read method, which in turn allows zero copy reads.
2010-11-10add write_buf method to high level APIMiklos Szeredi-17/+63
Add new write_buf() method to the highlevel API. Similarly to the lowlevel write_buf() method, this allows implementing zero copy writes.
2010-11-10fuse_buf_copy: check if buffers are the sameMiklos Szeredi-1/+13
When copying fuse buffers, check if the source and destination are the same and omit the copy as appropriate. Also check if the source and destination memory regions overlap and use memmove in that case.
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/+163
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-08Fix st_nlink for unlinked but still open filesMiklos Szeredi-5/+9
Fix st_nlink value in high level lib if file is unlinked but still open
2010-11-08Add ctx->pid to debug outputMiklos Szeredi-2/+2
2010-11-08libfuse: add store requestMiklos Szeredi-83/+122
Request data to be stored in the kernel buffers for a given inode.
2010-11-08bump version to 2.9.0-pre0Miklos Szeredi-1/+1
2010-11-08libfuse: support zero copy writes in lowlevel interfaceMiklos Szeredi-25/+326
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-11-08Fix fuse_buf_copy() if already at the end of the buffersMiklos Szeredi-4/+14
2010-11-08update umount procedureMiklos Szeredi-0/+50
If umount(8) supports --fake and --no-canonicalize (util-linux-ng version 2.18 or later), and umount(2) supports the UMOUNT_NOFOLLOW flag (linux kernel version 2.6.35 or later) then, "fusermount -u" will call the umount(2) system call and use "umount --fake ..." to update /etc/mtab Added --disable-legacy-umount option to configure. This disables the runtime checking of umount(8) version. When built with this option then "fusermount -u" will fail if umount(8) doesn't support the --fake and --no-canonicalize options.
2010-11-08Open /dev/null for writeMiklos Szeredi-1/+1
Open /dev/null for write instead of read for redirecting stdout and stderr
2010-11-08Fix check for read-only fs in mtab updateMiklos Szeredi-1/+12
2010-10-05add missing argument check in ulockmgr.cmkmm@gmx-topmail.de-0/+4
Add missing argument check in ulockmgr.c to prevent calling ulockmgr_server with illegal arguments. This would cause an ever growing list of ulockmgr_server processes with an endless list of open files which finally exceeds the open file handle limit. It appears samba is sometimes calling flock with illegal / weired values.
2010-09-28Fix ambiguous symbol version for fuse_chan_newMiklos Szeredi-1/+0
fuse_versionscript included fuse_chan_new in both FUSE_2.4 and FUSE_2.6. Remove the FUSE_2.4, which is invalid. Reported by Raymes Khoury, who discovered this with the gold linker
2010-09-28Fix option escaping for fusermount.Miklos Szeredi-1/+1
If the "fsname=" option contained a comma then the option parser in fusermount was confused (Novell bugzilla #641480). Fix by escaping commas when passing them over to fusermount. Reported by Jan Engelhardt
2010-08-27Add NetBSD supportMiklos Szeredi-11/+43
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-08-27cuse: fix minor typos in error messagesMiklos Szeredi-4/+4
This basically was a %s/fuse:/cuse:/ to remove some apparent copy/paste errors. Signed-off-by: Paul Bolle <pebolle@tiscali.nl>
2010-07-12libfuse: add buffer interfaceMiklos Szeredi-34/+490
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-24Add .gitignore filesMiklos Szeredi-6/+0
Add .gitignore files and delete .cvsignore files.
2010-06-23* Make the number of max background requests and congestionMiklos Szeredi-0/+22
threshold tunable.