| Commit message (Collapse) | Author | Age |
... | |
|
|
|
| |
See also issue #148.
|
| |
|
| |
|
| |
|
| |
|
|
|
|
| |
documentation
|
|
|
|
|
|
| |
-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.
|
|
|
|
| |
Fixes #116.
|
|
|
|
| |
Fixes #117.
|
|
|
|
|
|
| |
Enabled by default since we haven't released libfuse 3.0 yet :-).
Fixes #112.
|
|
|
|
| |
Fixes #112.
|
| |
|
|
|
|
| |
See also issue #114.
|
| |
|
|
|
|
| |
Fixes #106.
|
|
|
|
|
|
|
| |
The current version fails on Amazon Linux. This check should work
better.
Fixes #64.
|
|
|
|
| |
Fixes #111.
|
| |
|
|
|
|
| |
This turns issue #62 from a bug into an enhancement :-).
|
| |
|
| |
|
|
|
|
|
|
|
|
|
|
| |
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.
|
|
|
|
|
|
|
| |
This should help avoid people to accidentally put options
into argv[0].
Fixes #100.
|
|
|
|
|
|
| |
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.
|
| |
|
| |
|
|
|
|
| |
Thanks to (Github user) mtheall for the review!
|
|
|
|
|
|
|
| |
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.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
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
|
|
|
|
|
| |
This brings the default behavior in-line with that of the
regular `mount` command.
|
|
|
|
| |
This was only relevant for 2.4 kernels. Fixes #92.
|
|
|
|
|
|
| |
This obsoletes the ftruncate & fgetattr handlers.
Fixes #58.
|
|
|
|
|
|
| |
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.
|
| |
|
|
|
|
|
|
| |
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.
|
| |
|
|
|
|
|
|
|
| |
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.
|
|
|
|
| |
This is redundant with the capability flags in `wants` and `capable`.
|
| |
|
|
|
|
|
|
|
|
| |
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.
|
|
|
|
|
| |
This should make it more obvious at first glance what the different
examples do.
|
|
|
|
|
| |
This does not seem to be working. Maybe because it tries to treat the
mountpoint as a file rather than a directory?
|
|
|
|
| |
Fixes #32.
|
| |
|
|
|
|
|
| |
These examplesdemonstrate the use of the `fuse_lowlevel_notify_store`
and `fuse_lowlevel_notify_inval_inode` functions.
|
|
|
|
|
|
| |
This option is obsolete and should always be enabled. File systems that
want to limit the size of write requests should use the
``-o max_write=<N>`` option instead.
|
| |
|
|
|
|
| |
Fixes #59.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
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.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
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.
|