Skip to content

Releases: cberner/fuser

v0.6.0

22 Nov 22:17
Compare
Choose a tag to compare

Major new release updating the Filesystem interface to support newer ABIs (through 7.31). This is a breaking change, but for the most part it should be easy to update implementations by simply adding the new parameters and ignoring them.

Complete notes below:

  • Make spawn_mount() safe
  • Change flags parameter of create(), open(), opendir(), release(), releasedir() to be signed, so that it matches
    libfuse and the associated constants in libc
  • Change flags parameter of setxattr() to be signed, so that it matches libfuse
  • Change mask parameter of access() to be signed, so that it matches libfuse and the associated constants in libc
  • Change lock type parameter of getlk() and setlk() to be signed, so that it matches libfuse and the associated constants in libc
  • Change atime & atime_now and mtime & mtime_now parameters of setattr() to make their relationship more obvious
  • Add lock_owner and file flags parameters to read() and write()
  • Add umask parameter to mknod(), mkdir() and create()
  • Add KernelConfig parameter to init() to allow Filesystem to configure the kernel connection attributes
  • Add support for fallocate(), ioctl(), copy_file_range(), and lseek()
  • Add support for FUSE_BATCH_FORGET
  • Add support for FUSE_READDIRPLUS
  • Add support for FUSE_RENAME2
  • Add FUSE_WRITE_KILL_PRIV flag for write()
  • Add FUSE_WRITEBACK_CACHE flag
  • Add FUSE_NO_OPEN_SUPPORT flag
  • Add FUSE_PARALLEL_DIROPS flag
  • Add FUSE_HANDLE_KILLPRIV flag
  • Add FUSE_POSIX_ACL flag
  • Add FUSE_ABORT_ERROR flag
  • Add FUSE_NO_OPENDIR_SUPPORT flag
  • Add FUSE_CACHE_SYMLINKS flag
  • Add FUSE_EXPLICIT_INVAL_DATA flag
  • Add FUSE_IOCTL_COMPAT_X32 flag
  • Add FOPEN_CACHE_DIR flag
  • Add FOPEN_STREAM flag
  • Add FUSE_MAX_PAGES flag
  • Add max_pages, and time_gran support to init code path (these are not currently configurable)
  • Add support for ctime in setattr()
  • Add support for timestamps before the unix epoch in getattr() and setattr()

v0.5.0

18 Oct 05:18
Compare
Choose a tag to compare
  • Add support for linking with libfuse3
  • Add pure Rust implementation of mount() & unmount(). libfuse is no longer required on Linux
  • Begin adding support for newer ABIs (7.20 to 7.31)
  • Enable FUSE_BIG_WRITES for ABI >= 7.10

v0.4.1

14 Oct 05:13
Compare
Choose a tag to compare
  • Add serde support behind feature flag "serializable"

v0.4.0

14 Oct 05:12
Compare
Choose a tag to compare

Initial release of fuser. Forked from fuse crate