aboutsummaryrefslogtreecommitdiff
path: root/example
Commit message (Collapse)AuthorAge
* examples/passthrough_ll: added support for create()Gravatar Nikolaus Rath2017-06-05
|
* example/passthrough_ll: added write supportGravatar Nikolaus Rath2017-06-05
|
* notify_store_retrieve(): fix race on unmountGravatar Nikolaus Rath2017-05-31
| | | | | | | update_fs_loop() is still running when the filesystem unmounts, but it that case calls to fuse_lowlevel_notify_* will fail. Fixes: #105.
* example/notify_store_retrieve: add debugging code for issue #105.Gravatar Nikolaus Rath2017-05-31
|
* Revert "example/passthrough.c: add debugging code for issue #157."Gravatar Nikolaus Rath2017-05-31
| | | | This reverts commit 179fa13b40387645e722089873079488f9dbe3d8.
* passthrough_ll: document that fuse_ino_t and uintptr_t sizes must matchGravatar Nikolaus Rath2017-05-25
| | | | | | | We can consider changing the code to drop the requirement if it turns out that there's a system where this isn't given. Fixes issue #167.
* example/passthrough.c: add debugging code for issue #157.Gravatar Nikolaus Rath2017-05-25
|
* passthrough: implemented create()Gravatar Nikolaus Rath2017-04-07
| | | | | | This allows calls like open(file, O_CREAT|O_RDONLY, 0200) which would otherwise fail because we cannot open the file after mknod() has created it with 0200 permissions.
* example/passthrough: use fi->fh for read, write, fallocateGravatar Nikolaus Rath2017-04-07
| | | | | No reason not to use it. May even be a little faster and will consume less resources :-).
* passthrough:truncate(): work on file descriptor when possibleGravatar Nikolaus Rath2017-04-07
| | | | | This allows truncating an open file even if write permission was removed after open() (which is the expected behavior).
* example/passthrough: close open files in release()Gravatar Nikolaus Rath2017-04-07
| | | | That way we can use the file descriptor for other operations.
* passthrough, passthrough_fh: disable attribute cachingGravatar Nikolaus Rath2017-04-07
| | | | Required for better hardlink handling, see comments in patch.
* passthrough_ll: document that functionality is restrictedGravatar Nikolaus Rath2017-04-07
|
* hello.c: don't use constant instead of magic numberGravatar guraga2017-03-28
|
* passthrough_fh: declare support for . and .. lookups.Gravatar Nikolaus Rath2017-03-15
|
* 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.