aboutsummaryrefslogtreecommitdiff
path: root/example
Commit message (Collapse)AuthorAge
* Added experimental support for building with Meson+NinjaGravatar Nikolaus Rath2017-01-12
|
* Replaced evil pointer magic with offsetof()Gravatar Nikolaus Rath2017-01-12
| | | | This triggered undefined behaviour warnings from UBSan.
* Return with exitcode 0 if there are no errors.Gravatar Nikolaus Rath2017-01-11
|
* Added documentation and test case for null exampleGravatar Nikolaus Rath2016-12-23
|
* Fixed use of uninitialized memory.Gravatar Nikolaus Rath2016-12-23
|
* Revert "Dropped example/null.c"Gravatar Csaba Henk2016-12-23
| | | | | | | | | | | This reverts commit d5cdbb94a0650b0a462682cf0a84463ff1513900. null works completely fine, just the mountpoint should be a regular file -- so there is no need to dismiss it. Also: - fixing up compiler warnings - checking if the mountpoint is a regular file
* Fix a grammatical error.Gravatar Jay Hankins2016-12-04
|
* examples/passthrough_ll.c: Include <limits.h> (for PATH_MAX macro).Gravatar Przemyslaw Pawelczyk2016-11-28
| | | | | | | | | | Otherwise building w/o optimization (-O0) fails. passthrough_ll.c: In function 'lo_readlink': passthrough_ll.c:251:11: error: 'PATH_MAX' undeclared (first use in this function) char buf[PATH_MAX + 1]; (gcc v5.3.0 in Alpine Linux v3.4.6 x86_64 w/ musl-libc v1.1.14.)
* examples/passthrough_ll.c: Close root fd before application ends.Gravatar Przemyslaw Pawelczyk2016-11-28
| | | | | If we want to do, what system would do anyway upon program termination, then let's try to be a bit more scrupulous.
* examples/passthrough_ll.c: Fix segfault when showing help or version.Gravatar Przemyslaw Pawelczyk2016-11-28
| | | | | | root lo_inode's next and prev were not set early enough, which led to accessing addr 0x8 (or 0x4, depending on ptr size) when setting prev variable in lo_free(lo.root.next), because lo.root.next was NULL.
* silence bogus eclipse linter warningGravatar divinity762016-10-31
| | | "No break at the end of case cuse.c /example line 235 Code Analysis Problem"
* Clean-up doxygen documentationGravatar Nikolaus Rath2016-10-28
| | | | Fixes: #81.
* 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.
* 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.
* 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.
* 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.
* Fix race condition in notify_* examplesGravatar Nikolaus Rath2016-10-10
| | | | | | | The fix in commit cf4159156b was incomplete. While some false positives are caused by sleep() in the file system taking longer than expected, there was also a race condition where the file system would run before the contents are initialized properly.
* fuse_main(): extend support for printing helpGravatar Nikolaus Rath2016-10-10
| | | | | | 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.
* Use NULL as option processor where possible.Gravatar Nikolaus Rath2016-10-09
|
* Renamed cuses example and added test programGravatar Nikolaus Rath2016-10-09
| | | | | | | | An earlier version of the fioclient.c example was intended to be used together with cusexmp.c. The former has since evolved into ioctl_client.c and no longer has the function necessary to test CUSE. Therefore, we've added a new cuse_client.c that is clearly associated with the cuse.c example file system.
* Don't confuse lookup count for mountpoint and fileGravatar Nikolaus Rath2016-10-09
| | | | | I think this is the reason for a sporadic test failure, where fuse_lowlevel_notify_store() fails.
* Renamed timefsN examples to fuse_notify_*Gravatar Nikolaus Rath2016-10-09
| | | | | This should make it more obvious at first glance what the different examples do.
* Include testfsN examples in Doxygen documentation.Gravatar Nikolaus Rath2016-10-09
|
* Renamed ioctl and poll examplesGravatar Nikolaus Rath2016-10-09
| | | | | The new names should make it more obvious at first glance what each example demonstrates.
* Renamed some examples to make their function more obviousGravatar Nikolaus Rath2016-10-09
| | | | Also, added more comments for the same purpose.
* fuse_parse_cmdline(): do not print help/version textGravatar Nikolaus Rath2016-10-09
| | | | | The current behavior makes it difficult to add help for additional options. With the change, this becomes a lot easier.
* Whitespace fix.Gravatar Nikolaus Rath2016-10-09
|
* Dropped example/null.cGravatar Nikolaus Rath2016-10-09
| | | | | This does not seem to be working. Maybe because it tries to treat the mountpoint as a file rather than a directory?
* Added timefs3 to test notify_inval_entry.Gravatar Nikolaus Rath2016-10-08
| | | | Fixes #32.
* Add background and multithreading support to hello_ll and fuse_lo-plusGravatar Nikolaus Rath2016-10-08
|
* testfs2: Also test fuse_notify_retrieve().Gravatar Nikolaus Rath2016-10-08
|
* Added timefs[12] examples.Gravatar Nikolaus Rath2016-10-08
| | | | | These examplesdemonstrate the use of the `fuse_lowlevel_notify_store` and `fuse_lowlevel_notify_inval_inode` functions.
* Don't handle --help and --version in fuse_session_new().Gravatar Nikolaus Rath2016-10-02
| | | | | | | | | | | | | | | | | | | 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.
* Fixed permissions of source files.Gravatar Nikolaus Rath2016-10-02
|
* Turn struct fuse_chan into an implementation detailGravatar Nikolaus Rath2016-10-02
| | | | | | | | | | | | | | | | | | | | | 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.
* Renamed fuse_lowlevel_new() to fuse_session_new().Gravatar Nikolaus Rath2016-10-02
|
* Introduce separate mount/umount functions for low-level API.Gravatar Nikolaus Rath2016-10-02
|
* Fix ioctl exampleGravatar Nikolaus Rath2016-05-13
| | | | Fixes issue #39.
* Added test_fselGravatar Nikolaus Rath2016-03-29
|
* libfuse: add flags to ->rename()Gravatar Miklos Szeredi2014-07-15
| | | | See renameat2() system call in linux-3.15 and later kernels.
* compile fix for fuse_lo-plusGravatar Miklos Szeredi2014-03-18
|
* compile fixGravatar Miklos Szeredi2014-03-17
|
* libfuse: implement readdirplus for high-level APIGravatar Eric Wong2014-03-05
| | | | | | | | | | 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.
* libfuse: added fuse_lo-plus.c to the examplesGravatar Miklos Szeredi2014-02-21
|
* ulockmgr: strip ulockmgr support from this source packageGravatar Miklos Szeredi2013-07-25
| | | | | | 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.
* libfuse: fuse -> fuse3Gravatar Miklos Szeredi2013-07-25
| | | | | | 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.
* libfuse: remove "-D_FILE_OFFSET_BITS=64" from fuse.pcGravatar Miklos Szeredi2013-07-24
| | | | add AC_SYS_LARGEFILE to your configure.ac instead.
* Documentation fixesGravatar Miklos Szeredi2013-07-17
|