aboutsummaryrefslogtreecommitdiffstats
path: root/include/fuse_lowlevel.h
AgeCommit message (Collapse)AuthorLines
2017-08-22Document and unify error codes of fuse_lowlevel_notify_*Nikolaus Rath-12/+31
2017-08-22Document meaning of zero telldir() offset.Nikolaus Rath-15/+7
2017-08-06Clarified documentation for fuse_parse_cmdline()Nikolaus Rath-0/+3
2017-08-06Clarify how the filesystem should handle open/create flagsNikolaus Rath-12/+29
2017-08-03Simplify and fix FreeBSD fsname handlingNikolaus Rath-4/+0
This should simplify the code a lot. It also corrects a bug in that the (former) add_default_fsname() function actually set the -osubtype option.
2017-08-03FreeBSD: supprt fsname= optionBaptiste Daroussin-0/+4
2017-07-08Added public fuse_lib_help(), bumped minor versionNikolaus Rath-1/+1
2017-07-07Error out if FUSE_USE_VERSION is not definedNikolaus Rath-1/+1
This is safer than making assumptions.
2017-06-08Clarify *_timeout semanticsNikolaus Rath-2/+8
When changes always come through kernel, timeouts should be large.
2017-05-31Clarify that destroy() is called without kernel connectionNikolaus Rath-2/+4
2017-05-25Fix typo in comment.Nikolaus Rath-1/+1
2017-05-25Document RENAME_EXCHANGE and RENAME_NOREPLACE flags.Nikolaus Rath-0/+7
2017-03-15open(): fix documentation of O_TRUNC flagNikolaus Rath-8/+2
The FUSE_CAP_ATOMIC_IO_TRUNC capability is enabled by default, but we didn't update the open() documentation accordingly.
2016-11-29Improve documentation of fuse_session_unmountNikolaus Rath-1/+20
2016-11-29Return signal value if session loop is terminated by signal and improve ↵Nikolaus Rath-6/+22
documentation
2016-11-22Add support for FUSE_HANDLE_KILLPRIVNikolaus Rath-0/+10
Fixes #116.
2016-11-16Add support for more detailed error codes from main loopNikolaus Rath-2/+2
2016-11-16Fix typo in commentNikolaus Rath-1/+1
2016-11-16Document special semantics of ENOSYS error code.Nikolaus Rath-2/+79
2016-11-14Improve getattr() descriptionNikolaus Rath-1/+9
When writeback caching is enabled, the st_size value reported by the filesystem may be ignored.
2016-10-28Clean-up doxygen documentationNikolaus Rath-6/+1
Fixes: #81.
2016-10-27Removed some more "Changed in version x.py" comments.Nikolaus Rath-3/+0
2016-10-27Recommend when to use -o default_permissions automaticallyNikolaus Rath-0/+6
2016-10-25Clarify difference between notify_inval_entry and notify_delete().Nikolaus Rath-3/+8
Fixes #85.
2016-10-24fuse_session_new(): don't accept empty argv, check argv[0]Nikolaus Rath-0/+6
This should help avoid people to accidentally put options into argv[0]. Fixes #100.
2016-10-20Removed all "Introduced in..." commentsNikolaus Rath-26/+0
Since FUSE 3 is breaking backwards compatibility, this really does not matter.
2016-10-16Default to FUSE_USE_VERSION 30Nikolaus Rath-4/+3
2016-10-16fuse_session_new(): instead of listing options, refer to mount.fuse(8)Nikolaus Rath-10/+5
2016-10-15Make --help output more suitable for end-userNikolaus Rath-12/+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.
2016-10-15Unify handling of fuse_conn_info optionsNikolaus Rath-10/+6
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.
2016-10-13Make -o clone_fd into a parameter of session_loop_mt().Nikolaus Rath-1/+4
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-13Mention atomic_o_trunc capability in description of open() handler.Nikolaus Rath-6/+12
2016-10-13do_init(): treat command line options consistentlyNikolaus Rath-1/+8
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.
2016-10-10Document when fuse_reply_data will use splice()Nikolaus Rath-0/+27
2016-10-09fuse_parse_cmdline(): do not print help/version textNikolaus Rath-15/+14
The current behavior makes it difficult to add help for additional options. With the change, this becomes a lot easier.
2016-10-09Fix documentation of fuse_parse_cmdline().Nikolaus Rath-1/+1
For --help and --version, it returns -1.
2016-10-08Update list of requests that can be answered with fuse_reply_none().Nikolaus Rath-0/+2
2016-10-08Clarify that readdir() *may* report . and .. entries.Nikolaus Rath-0/+3
2016-10-03fuse_session_process_buf(): improve documentationNikolaus Rath-3/+4
2016-10-02Added fuse_session_fd()Nikolaus Rath-1/+17
Fixes #59.
2016-10-02Document that client pid/gid/uid may be zero.Nikolaus Rath-2/+9
Fixes #67.
2016-10-02Don't handle --help and --version in fuse_session_new().Nikolaus Rath-3/+62
Help and version messages can be generated using the new fuse_lowlevel_help(), fuse_lowlevel_version(), fuse_mount_help(), and fuse_mount_version() functions. The fuse_parse_cmdline() function has been made more powerful to do this automatically, and is now explicitly intended only for low-level API users. This is a code simplication patch. We don't have to parse for --help and --version in quite as many places, and we no longer have a low-level initialization function be responsible for the (super-high level) task of printing a program usage message. In the high-level API, we can now handle the command line parsing earlier and avoid running other initialization code if we're just going to abort later on.
2016-10-02Edited comments for clarity.Nikolaus Rath-4/+3
2016-10-02Turn struct fuse_chan into an implementation detailNikolaus Rath-81/+18
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.
2016-10-02Renamed fuse_lowlevel_new() to fuse_session_new().Nikolaus Rath-9/+10
2016-10-02Re-order declarations to reflect typical order of useNikolaus Rath-71/+73
2016-10-02Introduce separate mount/umount functions for low-level API.Nikolaus Rath-0/+27
2016-10-01Improve documentation of argument parsing.Nikolaus Rath-0/+7
2016-09-27Documentation improvements.Nikolaus Rath-5/+6
2016-09-27fuse_lowlevel_notify_*: take struct fuse_session instead of struct fuse_chanNikolaus Rath-10/+10
The only struct fuse_chan that's available to the user application is the one that is returned by fuse_mount. However, this is also permanently available from struct fuse_session. A later patch will therefore remove struct fuse_chan from the public API completely. This patch prepares for this by changing the fuse_lowlevel_notify_* functions to take a struct fuse_session parameter instead of a struct fuse_chan parameter.