CVSROOT: /cvs
Module name: src
Changes by: [email protected] 2026/01/22 04:53:31
Modified files:
lib/libfuse : Makefile Symbols.map fuse_chan.c
fuse_lowlevel.h fuse_ops.c fuse_private.h
shlib_version
sys/miscfs/fuse: fuse_device.c fuse_lookup.c fuse_vnops.c
fusefs_node.h
Added files:
lib/libfuse : fuse_lowlevel.c fuse_session.c
Log message:
Adds basic implementation of the low-level FUSE API.
This is sufficient to compile and run lowntfs-3g.
In this patch the low and high-level APIs are independent. The next
patch will modify the high-level API to make use of the low-level API
so that there is no longer any code duplication.
The libfuse changes are mostly additions and should be self-explanatory.
There are also some kernel changes required, which are:
- A fusefs dir vnode now keeps a reference to its parent vnode so that ".." is
resolves in fusefs_lookup rather than sending the lookup request to the FUSE
file system. This is consistent with Linux.
- Added sanity checks for the attributes returned from FBT_GETATTR. These
belong in the kernel and not in libfuse.
- fusefs_readdir needed some tweaking to handle full buffers.
- Set the vnode type from the attributes returned from FBT_MKDIR and
FBT_MKNOD.
Adds the following files
lib/libfuse/fuse_lowlevel.c
lib/libfuse/fuse_session.c
OK claudio@