| Commit message (Collapse) | Author | Age |
... | |
|
|
|
|
| |
The current behavior makes it difficult to add help for
additional options. With the change, this becomes a lot easier.
|
|
|
|
| |
For --help and --version, it returns -1.
|
| |
|
| |
|
|
|
|
|
|
| |
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.
|
|
|
|
| |
Fixes #67.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
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.
|
| |
|
| |
|
| |
|
| |
|
| |
|
|
|
|
|
|
|
|
|
|
|
| |
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.
|
| |
|
|\ |
|
| |
| |
| |
| |
| | |
requirements (#29)
Remove leading _ on header guards to comply with reserved identifier requirements
|
| | |
|
| |
| |
| |
| |
| |
| | |
Applied (whitespace-cleanup) to each file. Having whitespace changes
in the VCS is ugly, but it ensures that in the future committers
can run this function to *avoid* commiting any whitespace.
|
| | |
|
|/
|
|
|
| |
Apparently f_frsize has been passed on transparently since
2b4781100812d42e704c39c51303cd28ad3f9aa6 (Nov 28, 2005).
|
| |
|
|\ |
|
| |
| |
| |
| | |
Returns the full PACKAGE_VERSION string, per autoconf
|
| |
| |
| |
| |
| | |
This creates a separate device file descriptor for each processing thread,
which might improve performance.
|
|/
|
|
|
| |
New functions: fuse_chan_get(), fuse_chan_put(). Removed function:
fuse_chan_destroy().
|
| |
|
|
|
|
| |
Reported by Michael j Theall.
|
|
|
|
| |
Reported by Eric Biggers
|
|
|
|
| |
See renameat2() system call in linux-3.15 and later kernels.
|
| |
|
|
|
|
|
|
| |
This allows the filesystem to specify the time granularity it
supports when the kernel is responsible for updating times
("writeback_cache" option).
|
|
|
|
|
|
| |
and fuse_notify_delete()
Reported by Han-Wen Nienhuys
|
|
|
|
|
|
|
|
|
|
| |
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.
|
| |
|
|
|
|
|
| |
Asynchronous direct I/O is supported by linux kernels 3.13 and
later, writeback caching is supported by 3.14 and later.
|
| |
|
|
|
|
|
|
| |
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.
|
|
|
|
|
|
| |
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.
|
|
|
|
|
|
| |
Remove 'fh_old' which was an ABI compatibility field for a long time.
Make 'writepage' a bitfield.
|
| |
|
|\ |
|
| |
| |
| |
| |
| |
| |
| | |
Remove fuse_chan_bufsize() from the lowlevel API.
fuse_session_receive_buf() is now responsible for allocating memory for the
buffer.
|
| |
| |
| |
| |
| |
| |
| | |
Move the fuse_chan_ops.send and .receive implementations to fuse_lowlevel.c. The abstraction wasn't actually useful and made the the splice implementation more difficult.
Remove fuse_chan_ops.send and fuse_chan_ops.receive.
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Clean up fuse_chan related interfaces. Remove the following from the
lowlevel library API:
struct fuse_chan_ops;
fuse_chan_new();
fuse_chan_session();
fuse_chan_recv();
fuse_chan_send();
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Clean up fuse_session related interfaces. Remove the following from the
lowlevel library API:
struct fuse_session_ops;
fuse_session_new();
fuse_session_process();
fuse_session_data();
|
| |
| |
| |
| |
| | |
Replace fuse_session_next_chan() with fuse_session_chan(), as multiple
channels per session were never actually supported and probably never will.
|