aboutsummaryrefslogtreecommitdiff
path: root/lib
Commit message (Collapse)AuthorAge
...
* Set default options before parsingGravatar Tej Chajed2017-04-14
|
* Released 3.0.1Gravatar Nikolaus Rath2017-04-10
|
* Optimize fuse_fs_read. (#145)Gravatar amosonn2017-03-03
| | | Redundant copy when only op.read is available removed.
* Added experimental support for building with Meson+NinjaGravatar Nikolaus Rath2017-01-12
|
* Set IGNORE_MTAB when running under NetBSDGravatar Nikolaus Rath2016-12-23
| | | | | | | Apparently, NetBSD does not have /etc/mtab. Setting IGNORE_MTAB in this case makes the code a little nicer. See also https://github.com/libfuse/libfuse/pull/123
* Memory leak fixed in file : mount_bsd.cGravatar itsdeepak2016-12-23
|
* Improve documentation of fuse_session_unmountGravatar Nikolaus Rath2016-11-29
|
* Return signal value if session loop is terminated by signal and improve ↵Gravatar Nikolaus Rath2016-11-29
| | | | documentation
* Rename more things from fuse to fuse3Gravatar Przemysław Pawełczyk2016-11-28
|
* Make handling of -oallow_root easier to understandGravatar Nikolaus Rath2016-11-22
| | | | | | -oallow_root is handled in userspace, and requires passing -oallow_other to the kernel. This patch should make the code easier to understand and avoid the confusion that gave rise to issue #86.
* Add support for FUSE_HANDLE_KILLPRIVGravatar Nikolaus Rath2016-11-22
| | | | Fixes #116.
* Add support for FUSE_POSIX_ACLGravatar Nikolaus Rath2016-11-22
| | | | Fixes #117.
* Added support for FUSE_PARALLEL_DIROPSGravatar Nikolaus Rath2016-11-22
| | | | | | Enabled by default since we haven't released libfuse 3.0 yet :-). Fixes #112.
* Enable more capabilities by default, and document defaults.Gravatar Nikolaus Rath2016-11-16
| | | | Fixes #112.
* Abort if fs requests capabilities not supported by kernel.Gravatar Nikolaus Rath2016-11-16
| | | | See also issue #114.
* Fail more nicely on max_read mismatchGravatar Nikolaus Rath2016-11-16
| | | | | Instead of abort()ing, close the session properly and return an error code.
* Add support for more detailed error codes from main loopGravatar Nikolaus Rath2016-11-16
|
* Clean-up doxygen documentationGravatar Nikolaus Rath2016-10-28
| | | | Fixes: #81.
* Renamed fusermount / mount.fuse to fusermount3 / mount.fuse3Gravatar Nikolaus Rath2016-10-28
|
* Add max_read to fuse_conn_infoGravatar Nikolaus Rath2016-10-27
| | | | | | | | | | Eventually, this setting should be negotiated in the filesystem's init() handler (like e.g. max_write). However, this requires corresponding changes in the FUSE kernel module. In preparation for this (and to allow a transition period) we already allow (and require) filesystems to set the value in the init() handler in addition to the mount option. The end-goal is tracked in issue #91.
* Use "se" instead of "f" for struct fuse_sessionGravatar Nikolaus Rath2016-10-25
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The fuse_session pointer is sometimes called f and at other times se. The former is an artifact from the time when there still was a separate struct fuse_ll object. For consistency and to easy maintenance, this patch changes the name of the fuse_session pointer to "se" wherever possible. This patch was generated by the following Coccinelle script: @@ symbol f, se; @@ struct fuse_session * -f +se ; <... -f +se ...> @@ expression expr; @@ struct fuse_session * -f +se = expr; <... -f +se ...> @@ identifier fn; @@ fn(...,struct fuse_session * -f +se ,...) { <... -f +se ...> } Due to its complexity, the do_init() function had to be commented out and then patched manually.
* Added debug logging to chmodGravatar Nikolaus Rath2016-10-24
|
* Fix segfault in debug logging codeGravatar Nikolaus Rath2016-10-24
| | | | fi may be NULL, so we need to protect against this.
* fuse_session_new(): don't accept empty argv, check argv[0]Gravatar Nikolaus Rath2016-10-24
| | | | | | | This should help avoid people to accidentally put options into argv[0]. Fixes #100.
* Turn fuse_operations.nopath_flag into fuse_config.nullpath_okGravatar Nikolaus Rath2016-10-20
| | | | | | Modifying struct fuse_config in the init() handler is the canonical way to adjust file-system implementation specific settings. There is no need to have flags in struct fuse_operations.
* fuse_new(): don't accept options that don't make sense for end-usersGravatar Nikolaus Rath2016-10-20
| | | | | | Several options (use_ino, etc) depend on the file system implementation. Allowing them to be set from the command line makes no sense.
* Pass struct fuse_config to high-level init() handler.Gravatar Nikolaus Rath2016-10-20
|
* Accept zero value for fuse_conn_info optionsGravatar Nikolaus Rath2016-10-20
| | | | This may not make sense for all options, but it's good practice.
* Do not close stdout on fuse_session_destroy()Gravatar Consus2016-10-20
| | | | | | | If fuse_session_mount() fails (or was never called in the first place) we end up with the default fd value which happens to be 0. It hurts long-running processes, which lifetime extends beyond session's lifetime.
* Cast to void where we deliberately ignore return valuesGravatar Nikolaus Rath2016-10-18
|\
| * Ignore some errorsGravatar Mihail Konev2016-10-18
| |
* | Update linker scriptGravatar Nikolaus Rath2016-10-17
| | | | | | | | | | | | - Fixes commit d49f2e77b4. - Fixes commit 199fc0f833. - Thanks to Github user mtheall for the review!
* | fuse_session_new(): accept --debugGravatar Nikolaus Rath2016-10-17
| | | | | | | | | | | | Fixes commit 3e022acf4076. Thanks to Github user mtheall for the review!
* | Inlined fuse_mount_help() into fuse_lowlevel_help().Gravatar Nikolaus Rath2016-10-16
| | | | | | | | | | | | | | | | | | Both the BSD and Linux implementation actually accept mostly the same FUSE-specific mount options. Up to now, the BSD help function appended the output of ``mount_fusefs --help``, but looking at http://www.unix.com/man-page/freebsd/8/mount_fusefs/ this is likely more confusing than helpful (since the user is not actually invoking mount_fusefs directly, most of the options don't make sense).
* | fuse_session_new: accept -o debug as synonym for -dGravatar Nikolaus Rath2016-10-16
| |
* | Make --help output more suitable for end-userGravatar Nikolaus Rath2016-10-15
| | | | | | | | | | | | | | We now only list options that are potentially useful for an end-user (and unlikely to accidentally break a file system). The full list of FUSE options has been moved to the documentation of the fuse_new() and fuse_session_new() functions.
* | Removed -o nopath - it never did anythingGravatar Nikolaus Rath2016-10-15
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | We are overriding this setting with the flag in struct fuse_operations: $ example/hello -f -d ~/tmp/mnt FUSE library version: 3.0.0pre0 nopath: 0 unique: 1, opcode: INIT (26), nodeid: 0, insize: 56, pid: 0 INIT: 7.25 flags=0x0007fffb max_readahead=0x00020000 INIT: 7.23 flags=0x00006031 max_readahead=0x00020000 max_write=0x00020000 max_background=0 congestion_threshold=0 time_gran=0 unique: 1, success, outsize: 80 $ example/hello -f -d ~/tmp/mnt -o nopath FUSE library version: 3.0.0pre0 nopath: 0 unique: 1, opcode: INIT (26), nodeid: 0, insize: 56, pid: 0 INIT: 7.25 flags=0x0007fffb max_readahead=0x00020000 INIT: 7.23 flags=0x00006031 max_readahead=0x00020000 max_write=0x00020000 max_background=0 congestion_threshold=0 time_gran=0 unique: 1, success, outsize: 80
* | Removed -o nonempty optionGravatar Nikolaus Rath2016-10-15
| | | | | | | | | | This brings the default behavior in-line with that of the regular `mount` command.
* | Drop -o large_read mount optionGravatar Nikolaus Rath2016-10-15
| | | | | | | | This was only relevant for 2.4 kernels. Fixes #92.
* | Pass fuse_file_info to getattr, chown, chmod, truncate, utimens handlersGravatar Nikolaus Rath2016-10-15
| | | | | | | | | | | | This obsoletes the ftruncate & fgetattr handlers. Fixes #58.
* | Unify handling of fuse_conn_info optionsGravatar Nikolaus Rath2016-10-15
| | | | | | | | | | | | Instead of using command line options to modify struct fuse_conn_info before and after calling the init() handler, we now give the file system explicit control over this.
* | Merge branch 'fixup-lock-options'Gravatar Nikolaus Rath2016-10-15
|\ \ | |/ |/|
| * Re-activated lost no_remote_*lock options.Gravatar Nikolaus Rath2016-10-15
| |
* | Make -o clone_fd into a parameter of session_loop_mt().Gravatar Nikolaus Rath2016-10-13
| | | | | | | | | | | | This option really affects the behavior of the session loop, not the low-level interface. Therefore, it does not belong in the fuse_session object.
* | Move session options into sub-structGravatar Nikolaus Rath2016-10-13
| | | | | | | | | | | | | | The session options are used only once to determine the proper conn->want flags. It is nice to have them clearly separated from the other struct fuse_session members that are used throughout the life of the file system.
* | Use NULL for option processing function where possible.Gravatar Nikolaus Rath2016-10-13
| |
* | Activate splice_read by default if write_buf is implemented.Gravatar Nikolaus Rath2016-10-13
|/
* do_init(): treat command line options consistentlyGravatar Nikolaus Rath2016-10-13
| | | | | | | Previously, some command line options would change the FUSE defaults but leave the final value to the file systems `init` handler while others would override any changes made by `init`. Now, command line options do both: they modify the default, *and* take precedence.
* Factored out LL_OPTIONS macroGravatar Nikolaus Rath2016-10-10
|
* Removed 'async_read' field in fuse_conn_infoGravatar Nikolaus Rath2016-10-10
| | | | This is redundant with the capability flags in `wants` and `capable`.