aboutsummaryrefslogtreecommitdiff
path: root/include/fuse.h
AgeCommit message (Collapse)Author
2021-05-07Fix doxygen warnings. (#600)Junichi Uekawa
Some parameters were undocumented, and @file does not mean to expand current file name.
2021-03-25Fix typos (#592)Andrew Gaul
2020-10-03Fix typo "retuned" -> "returned" (#553)ferivoz
2020-08-09Doc fixes (#537)Junichi Uekawa
* Add fallocate to list of operations that may omit path. * earlier versions is 10+ years old. Document is not obvious how old it is. Add it. * Update manpage link
2020-01-31Update comment for the copy_file_range operation (#497)Florian Weimer
copy_file_range was first implemented with copy-based emulation in glibc 2.27, but the emulation was subsequently removed again because correct emulation depends on why the application attempted to make a copy. Therefore, file systems cannot rely on low-level userspace performing emulation.
2020-01-27Remove trailing comma in enums (#494)zsugabubus
They are illegal in C89/90.
2019-12-31Style: Fix an indention in comments (#480)Changli Gao
2019-12-31Make ioctl prototype conditional on FUSE_USE_VERSION. (#482)Bill Zissimopoulos
Define FUSE_USE_VERSION < 35 to get old ioctl prototype with int commands; define FUSE_USE_VERSION >= 35 to get new ioctl prototype with unsigned int commands. Fixes #463.
2019-11-03Implement lseek operation (#457)Yuri Per
2019-04-06Various documentation improvementsAlan Somers
See issue #389 for some related discussions.
2019-03-11Defined the (*ioctl)() commands as unsigned int (#381)Jean-Pierre André
Instead of the Posix ioctl(2) command, Linux uses its own variant of ioctl() in which the commands are requested as "unsigned long" and truncated to 32 bits by the fuse kernel module. Transmitting the commands to user space file systems as "unsigned int" is a workaround for processing ioctl() commands which do not fit into a signed int.
2019-03-10Improve documentation for the flush method (#378)Alan Somers
Fixes: #373
2018-11-19libfuse: add copy_file_range() supportNiels de Vos
Add support for the relatively new copy_file_range() syscall. Backend filesystems can now implement an efficient way of cloning/duplicating data ranges within files. See 'man 2 copy_file_range' for more details.
2018-10-09Add unprivileged option in `mount.fuse3`Mattias Nissler
The unprivileged option allows to run the FUSE file system process without privileges by dropping capabilities and preventing them from being re-acquired via setuid / fscaps etc. To accomplish this, mount.fuse sets up the `/dev/fuse` file descriptor and mount itself and passes the file descriptor via the `/dev/fd/%u` mountpoint syntax to the FUSE file system.
2018-08-29return different non-zero error codes (#290)Oded Arbel
Return different error codes from fuse_main()
2018-07-02fuse.h: fix typo (currenlty -> currently)William Woodruff
2018-05-24fix documentation for opendir in fuse_operationsCarl Edquist
the filehandle from opendir is passed to releasedir - there is no closedir function in fuse_operations
2018-04-13Drop redundant ; from FUSE_REGISTER_MODULE()Tomohiro Kusumi
Callers do (and should) use ;.
2017-11-27Spelling (#223)Josh Soref
Fix spelling errors
2017-08-24Add idle_threads mount option.Joseph Dodge
2017-08-24Allow inode cache invalidation in high-level APISławek Rudnicki
We re-introduce the functionality of invalidating the caches for an inode specified by path by adding a new routine fuse_invalidate_path. This is useful for network-based file systems which use the high-level API, enabling them to notify the kernel about external changes. This is a revival of Miklos Szeredi's original code for the fuse_invalidate routine.
2017-08-22Document meaning of zero telldir() offset.Nikolaus Rath
2017-08-06Clarify how the filesystem should handle open/create flagsNikolaus Rath
2017-07-13Only declare fuse_new_30() when FUSE_USE_VERSION == 30Nikolaus Rath
This function shouldn't be called when using a newer fuse version, so we should not define it in that case.
2017-07-08Added public fuse_lib_help(), bumped minor versionNikolaus Rath
2017-05-25Document RENAME_EXCHANGE and RENAME_NOREPLACE flags.Nikolaus Rath
2017-04-12Improved documentation of fuse_context.private_dataNikolaus Rath
In particular, don't call it "user_data" in one place and "private_data" elsewhere. Changing the name of the variable in the prototype should not affect backwards compatibility. Fixes: #155.
2017-04-07Document true meaning of the 'use_ino' option.Nikolaus Rath
2016-11-29Improve documentation of fuse_session_unmountNikolaus Rath
2016-11-29Return signal value if session loop is terminated by signal and improve ↵Nikolaus Rath
documentation
2016-11-22Add support for FUSE_HANDLE_KILLPRIVNikolaus Rath
Fixes #116.
2016-11-16Fix typo in commentNikolaus Rath
2016-11-16Add support for more detailed error codes from main loopNikolaus Rath
2016-11-06Fix documentation: fuse_file_info may be NULL for open filesNikolaus Rath
This turns issue #62 from a bug into an enhancement :-).
2016-11-06Removed reference to fgetattr and ftruncate (don't exist anymore)Nikolaus Rath
2016-11-06Fixed typo in comment.Nikolaus Rath
2016-10-28Clean-up doxygen documentationNikolaus Rath
Fixes: #81.
2016-10-27Removed some more "Changed in version x.py" comments.Nikolaus Rath
2016-10-27Recommend when to use -o default_permissions automaticallyNikolaus Rath
2016-10-24fuse_session_new(): don't accept empty argv, check argv[0]Nikolaus Rath
This should help avoid people to accidentally put options into argv[0]. Fixes #100.
2016-10-20Turn fuse_operations.nopath_flag into fuse_config.nullpath_okNikolaus Rath
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.
2016-10-20Pass struct fuse_config to high-level init() handler.Nikolaus Rath
2016-10-20Removed all "Introduced in..." commentsNikolaus Rath
Since FUSE 3 is breaking backwards compatibility, this really does not matter.
2016-10-16fuse_new(): instead of listing options, refer to mount.fuse(8)Nikolaus Rath
2016-10-15Make --help output more suitable for end-userNikolaus Rath
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.
2016-10-15Pass fuse_file_info to getattr, chown, chmod, truncate, utimens handlersNikolaus Rath
This obsoletes the ftruncate & fgetattr handlers. Fixes #58.
2016-10-13Make -o clone_fd into a parameter of session_loop_mt().Nikolaus Rath
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.
2016-10-10fuse_main(): extend support for printing helpNikolaus Rath
There's now a way to inhibit the "usage" line (which actually got lost in commit 225c12aebf2d), which makes it easier for simply file-systems to generate good-looking --help output.
2016-10-02Edited comments for clarity.Nikolaus Rath
2016-10-02Turn struct fuse_chan into an implementation detailNikolaus Rath
The only struct fuse_chan that's accessible to the user application is the "master" channel that is returned by fuse_mount and stored in struct fuse_session. When using the multi-threaded main loop with the "clone_fd" option, each worker thread gets its own struct fuse_chan. However, none of these are available to the user application, nor do they hold references to struct fuse_session (the pointer is always null). Therefore, any presence of struct fuse_chan can be removed without loss of functionality by relying on struct fuse_session instead. This reduces the number of API functions and removes a potential source of confusion (since the new API no longer looks as if it might be possible to add multiple channels to one session, or to share one channel between multiple sessions). Fixes issue #17.