| Commit message (Collapse) | Author | Age |
... | |
| |
| |
| |
| |
| |
| | |
- Fixes commit d49f2e77b4.
- Fixes commit 199fc0f833.
- Thanks to Github user mtheall for the review!
|
| |
| |
| |
| |
| |
| | |
Fixes commit 3e022acf4076.
Thanks to Github user mtheall for the review!
|
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Both the BSD and Linux implementation actually accept mostly the same
FUSE-specific mount options. Up to now, the BSD help function appended
the output of ``mount_fusefs --help``, but looking at
http://www.unix.com/man-page/freebsd/8/mount_fusefs/ this is likely more
confusing than helpful (since the user is not actually invoking
mount_fusefs directly, most of the options don't make sense).
|
| | |
|
| |
| |
| |
| |
| |
| |
| | |
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.
|
| |
| |
| |
| |
| |
| |
| | |
The session options are used only once to determine the proper
conn->want flags. It is nice to have them clearly separated from the
other struct fuse_session members that are used throughout the life of
the file system.
|
| | |
|
|/ |
|
|
|
|
|
|
|
| |
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`.
|
|
|
|
|
| |
In commit 2ed7af, we accidentally set the default values *after*
parsing the command line arguments.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
These changes were generated with the following Coccinelle semantic
patch:
@@
symbol f, se; // avoid unneeded warnings from Coccinelle
@@
struct fuse_session *
-f
+se
;
<...
-f
+se
...>
@@
identifier fn;
@@
fn(...,struct fuse_session *
-f
+se
,...) { <...
-f
+se
...> }
|
|
|
|
|
|
| |
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.
|
| |
|
|
|
|
|
| |
The current behavior makes it difficult to add help for
additional options. With the change, this becomes a lot easier.
|
| |
|
|
|
|
|
| |
If we don't assign a value to padding, we get a warning about reading
uninitialized data when sending the iovec to the kernel.
|
|
|
|
|
|
| |
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.
|
|
|
|
| |
This is an overlooked artifact of the fuse_ll-fuse_session merge.
|
| |
|
|
|
|
| |
Replaced "req->se" with "f" where the latter is already defined.
|
|
|
|
|
| |
Remove pointless aliasing of "struct fuse_session *se" to "struct
fuse_session *f".
|
|
|
|
| |
Fixup cuse_lowlevel_new().
|
|
|
|
| |
Fixup fuse_session_new().
|
|
|
|
| |
Merge fuse_ll_destroy() and fuse_session_destroy().
|
|
|
|
| |
Replace se->f with se.
|
|
|
|
| |
Replaced all references to req->f with req->se.
|
|
|
|
|
| |
Merged the structures, and replaced fuse_ll with fuse_session
in all type definitions.
|
|
|
|
|
| |
We also accept a number of mount options that are common to
all file systems (nosuid, nodev, ro, etc).
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This is a code simplification patch.
- It confines most of the implementation channel implementation into
fuse_loop_mt (which is its only user).
- It makes it more obvious in the code that channels are only ever used
when using -o clone_fd and multi-threaded main loop.
- It simplies the definition of both struct fuse_session and struct
fuse_chan.
- Theoretically it should result in (minuscule) performance
improvements when not using -o clone_fd.
- Overall, it removes a lot more lines of source code than it adds :-).
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
In theory, a poll handle could hang around much longer than the worker
thread that creates it. Furthermore, the thread that created the
pollhandle is no more likely to call fuse_lowlevel_notify_poll() than
any other thread.
In theory, this would have kept the channel alive for much longer than
necessary. In practice, there seems to have been a bug that prevented
this - and instead allowed the channel to be destroyed while there
was still a pollhandle referring to it.
Instead of fixing this by calling fuse_chan_get() and fuse_chan_put() in
do_poll() and fuse_pollhandle_destroy(), we simply transmit poll
notifications over the master channel now.
|
| |
|
| |
|
|
|
|
| |
Fixes #59.
|
|
|
|
|
|
| |
This distinction no longer makes sens. fuse_lowlevel.c already contains
several session related functions, and fuse_session.c contains various
stuff that is more related to the channel interface.
|
|
|
|
| |
There is no point in having a separate file for a 10 line function.
|
|
|
|
|
| |
This should make more clear what file contains code for what
purpose.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
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.
|
|
|
|
| |
There is no consumer of it down the line.
|
|
|
|
| |
Also, do not include "General options" in usage message.
|