aboutsummaryrefslogtreecommitdiffstats
path: root/lib
AgeCommit message (Collapse)AuthorLines
2015-09-29Merge branch 'clone_fd'Miklos Szeredi-11/+90
2015-08-14Merge git://git.code.sf.net/u/xophmeister/fuseMiklos Szeredi-0/+4
2015-08-12Canonicalised whitespace and added ChangeLog entryChristopher Harrison-1/+1
2015-08-12libfuse: fix warning mount.c:receive_fd()Miklos Szeredi-1/+1
Reported by Albert Berger
2015-07-30Added fuse_pkgversion functionChristopher Harrison-0/+4
Returns the full PACKAGE_VERSION string, per autoconf
2015-06-29libfuse: fix possible memory leakMiklos Szeredi-1/+1
Reported by Jose R. Guzman
2015-05-22libfuse: fix exec environment for mount and umountMiklos Szeredi-6/+17
Found by Tavis Ormandy (CVE-2015-3202).
2015-05-18libfuse: add "clone_fd" optionMiklos Szeredi-2/+56
This creates a separate device file descriptor for each processing thread, which might improve performance.
2015-05-18libfuse: get ref for reqMiklos Szeredi-1/+3
While the request lives don't free the channel associated with the request, the answer will need to be written on the channel.
2015-05-18libfuse: refcount fuse_chan objectsMiklos Szeredi-8/+31
New functions: fuse_chan_get(), fuse_chan_put(). Removed function: fuse_chan_destroy().
2015-04-23libfuse: add FUSE_CAP_NO_OPEN_SUPPORT flag to ->init()Miklos Szeredi-0/+2
2015-02-26libfuse: fix handling of '.' and '..' in highlevel readdirplusMiklos Szeredi-4/+12
2015-02-26libfuse: fix fuse_remove_signal_handlers()Miklos Szeredi-11/+11
to properly restore the default signal handler. Reported by: Chris Johnson <johnsocg@gmail.com>
2014-07-21libfuse: highlevel API: fix directory file handle passed to ioctl() methodMiklos Szeredi-2/+8
Reported by Eric Biggers
2014-07-15libfuse: add flags to ->rename()Miklos Szeredi-15/+73
See renameat2() system call in linux-3.15 and later kernels.
2014-07-15libfuse: allow setting ctime in ->setattr()Miklos Szeredi-1/+7
2014-07-15libfuse: add "time_gran" optionMiklos Szeredi-1/+12
This allows the filesystem to specify the time granularity it supports when the kernel is responsible for updating times ("writeback_cache" option).
2014-07-15fusermount, libfuse: send value as unsigned in "user_id=" and "group_id="Miklos Szeredi-1/+1
...options. Uids/gids larger than 2147483647 would result in EINVAL when mounting the filesystem. This also needs a fix in the kernel.
2014-03-26Initilaize stat buffer passed to ->getattr() and ->fgetattr()Miklos Szeredi-0/+2
to zero in all cases. Reported by Daniel Iwan.
2014-03-05libfuse: implement readdirplus for high-level APIEric Wong-57/+264
Reuse the old "readdir" callback, but add a flags argument, that has FUSE_READDIR_PLUS in case this is a "plus" version. Filesystems can safely ignore this flag, but if they want they can add optimizations based on it: i.e. only retrieve the full attributes in PLUS mode. The filler function is also given a flags argument and the filesystem can set FUSE_FILL_DIR_PLUS if all the attributes in "stat" are valid.
2014-02-27Allocate buffer when splicing from the fuse deviceMiklos Szeredi-6/+21
Was broken by commit 561d7054d856 "libfuse: remove fuse_chan_bufsize()".
2014-02-04fuse: use dlsym() instead of relying on ld.so constructor functionsFabrice Bauzac-43/+94
2014-01-29libfuse: Add "async_dio" and "writeback_cache" optionsMiklos Szeredi-5/+32
Asynchronous direct I/O is supported by linux kernels 3.13 and later, writeback caching is supported by 3.14 and later.
2013-11-29Fix fuse_add_direntry_plus()Miklos Szeredi-15/+10
2013-08-26Merge remote-tracking branch 'origin/fuse_2_9_bugfix'Miklos Szeredi-0/+3
2013-08-26Add missing includesDaniel Thau-0/+3
This allows compiling fuse with musl.
2013-08-26Don't close -1 fd in fuse_chan_destroy()Miklos Szeredi-1/+3
Valgrind warns on close(-1). So don't do this (happens if fuse_chan_clearfd() was called on the channel).
2013-08-26Change generation and nlookup from 'unsigned long' to 'uint64_t'Miklos Szeredi-2/+1
2013-07-26Print help on stdout instead of stderrMiklos Szeredi-28/+22
2013-07-25ulockmgr: strip ulockmgr support from this source packageMiklos Szeredi-449/+1
Distribute ulockmgr separately. It is not needed for the building of libfuse, only fusexmp_fh. Check ulockmgr library in ./configure and if not disable remote-lock suport in fusexmp_fh.
2013-07-25libfuse: fuse -> fuse3Miklos Szeredi-4/+4
Allow 2.X and 3.X to coexist. Includes are now stored under /usr/include/fuse3 and library is named libfuse3.*. Invoke pkg-config with "fuse3" as the first argument to build with version 3 of the library.
2013-07-24libfuse: remove "-D_FILE_OFFSET_BITS=64" from fuse.pcMiklos Szeredi-2/+15
add AC_SYS_LARGEFILE to your configure.ac instead.
2013-07-18libfuse: clean up struct fuse_file_infoMiklos Szeredi-16/+1
Remove 'fh_old' which was an ABI compatibility field for a long time. Make 'writepage' a bitfield.
2013-07-17Merge https://github.com/qknight/fuse-fuseMiklos Szeredi-0/+2
2013-07-02rewrote c++ style comments to c style coments mentioned by Miklos SzerediJoachim Schiele-2/+2
2013-07-01Released 2.9.3Miklos Szeredi-1/+1
2013-07-01libfuse: don't close fd if it's -1Miklos Szeredi-1/+4
This prevents a valgrind warning.
2013-07-01libfuse: fix multiple close of device fdMiklos Szeredi-11/+29
- fuse_kern_unmount closes handle (e.g. 19) - a thread in my process opens a file - the OS assigns newly freed handle (i.e. 19) - fuse_kern_chan_destroy closes the same handle (i.e. 19) - a thread in my process opens another file - the OS assigns newly freed handle (i.e. 19) - * MAYHEM * Reported by Dan Greenfield
2013-06-21libfuse: remove session and chan abstractionsMiklos Szeredi-128/+49
There's actually just one type of channel and session, so we don't need the generic callback functions.
2013-06-21libfuse: remove fuse_chan_bufsize()Miklos Szeredi-85/+46
Remove fuse_chan_bufsize() from the lowlevel API. fuse_session_receive_buf() is now responsible for allocating memory for the buffer.
2013-06-21libfuse: remove fuse_chan_(send|receive)Miklos Szeredi-154/+69
Move the fuse_chan_ops.send and .receive implementations to fuse_lowlevel.c. The abstraction wasn't actually useful and made the the splice implementation more difficult. Remove fuse_chan_ops.send and fuse_chan_ops.receive.
2013-06-21libfuse: set FD_CLOEXEC also when receiving device fd from fusermountMiklos Szeredi-0/+3
2013-06-21libfuse: clean up fuse_chanMiklos Szeredi-4/+82
Clean up fuse_chan related interfaces. Remove the following from the lowlevel library API: struct fuse_chan_ops; fuse_chan_new(); fuse_chan_session(); fuse_chan_recv(); fuse_chan_send();
2013-06-21libfuse: clean up fuse_sessionMiklos Szeredi-45/+25
Clean up fuse_session related interfaces. Remove the following from the lowlevel library API: struct fuse_session_ops; fuse_session_new(); fuse_session_process(); fuse_session_data();
2013-06-21libfuse: replace fuse_session_next_chanMiklos Szeredi-12/+7
Replace fuse_session_next_chan() with fuse_session_chan(), as multiple channels per session were never actually supported and probably never will.
2013-06-20- added a doxygen main pageJoachim Schiele-0/+2
- modified all examples to be included in doxygen - modified the API documentation to have more details - added the 490px_FUSE_structure.svg.png (c) wikipedia
2013-06-20libfuse: fix multiple close of device fdMiklos Szeredi-14/+22
- fuse_kern_unmount closes handle (e.g. 19) - a thread in my process opens a file - the OS assigns newly freed handle (i.e. 19) - fuse_kern_chan_destroy closes the same handle (i.e. 19) - a thread in my process opens another file - the OS assigns newly freed handle (i.e. 19) - * MAYHEM * Reported by Dan Greenfield
2013-06-20libfuse: remove channel user dataMiklos Szeredi-11/+8
2013-03-19Merge branch 'fuse_2_9_bugfix'Miklos Szeredi-0/+3
2013-03-19libfuse: fix thread cancel raceMiklos Szeredi-0/+2
Exiting a worker my race with cancelling that same worker. This caused a segmenation fault. Reported and tested by Anatol Pomozov