Download Latest Version macFUSE 5.4.0 source code.zip (5.3 kB) Google Add to Preferred Sources
Home / macfuse-5.4.0
Name Modified Size InfoDownloads / Week
Parent folder
macfuse-5.4.0.sha256 2026-09-07 262 Bytes
macfuse-5.4.0.sha256.sig 2026-09-07 594 Bytes
macfuse-5.4.0.dmg 2026-09-07 16.5 MB
macfuse-5.4.0-debug.tbz 2026-09-07 40.8 MB
macFUSE 5.4.0 source code.tar.gz 2026-09-07 4.0 kB
macFUSE 5.4.0 source code.zip 2026-09-07 5.3 kB
README.md 2026-09-07 6.3 kB
Totals: 7 Items   57.3 MB 8

General

  • Update the build process for the FSKit backend to use Xcode 27.0 (macOS 27 SDK). The remaining components are built with Xcode 26.6 (macOS 26.5 SDK)

  • Improve mount failure reporting and daemonization behavior for file systems using libfuse and libfuse3

  • Avoid following symbolic links when changing ownership of newly created mount points in /Volumes

FSModule (FSKit Backend)

  • Add support for the new macOS 27 FSKit volume operation APIs while retaining compatibility with earlier macOS releases

  • Forward the caller's effective user and group IDs to the file system server on macOS 27

  • Add item attribute caching based on the validity timeouts returned by the file system server

Refresh or invalidate cached attributes when operations change them, and avoid unnecessary FUSE_SETATTR requests when no supported attributes remain to be applied.

  • Fix a bug that could cause small write requests to deliver zero-filled data to the file system server. This addresses macfuse/macfuse#1187.

  • Fix a crash when the file system server returns an empty FUSE_READ reply, for example when reading past the end of a file. This addresses macfuse/macfuse#1188.

  • Support reads without a preceding open call by opening a read-capable file handle on demand

Reuse existing handles when their access modes are sufficient, and replace them with handles supporting the combined access modes when necessary. This addresses macfuse/macfuse#1181.

  • Improve directory enumeration by validating cookies and verifiers and cleaning up remaining file and directory handles during close, reclaim, and item deactivation

  • Fix parent directory handling for hard-linked files and improve overwrite-rename behavior

Avoid unsupported swap renames and use RENAME_EXCL only when extended rename support has been negotiated with the file system server. This addresses macfuse/macfuse#1191.

  • Fall back to FUSE_MKNOD when the file system server does not implement FUSE_CREATE

  • Improve stability by fixing item lock ordering and lock state tracking, validating file system replies, and releasing lookup references and file handles on error paths

  • Create missing mount points in the requesting user's security context

Only the final path component is created. Direct children of /Volumes are created by the daemon and then assigned to the requesting user.

  • Include fatal error messages in crash reports to improve diagnostics

Kernel Extension (Kernel Backend)

  • Update the kernel extension version to 5.4.0

  • Harden ioctl reply handling by validating response sizes and copying only the data returned by the file system server to prevent a potential kernel memory disclosure.

  • Fix a rare use-after-free when allocating a request buffer fails, and fix request ticket leaks when handling attributes, extended attributes, and inode invalidation notifications

  • Improve locking during mounting and connection teardown and validate request ticket state before processing replies

  • Prevent unexpected replies to FUSE_MONITOR requests from being matched to later requests. This addresses macfuse/macfuse#1190.

  • Harden notification handling by validating protocol versions, session state, payload sizes, and names

Improve directory entry invalidation and deletion handling, including clearing negative name cache entries and preserving open files after deletion notifications. Improve inode range invalidation to preserve dirty cached data and prevent range overflow.

  • Return ENOSYS for the recognized but unimplemented POLL, STORE, and RETRIEVE notifications

  • Restore normal mount state after an unsuccessful unmount attempt so file system operations and notifications can resume

  • Bound file system type and volume name validation to their input buffers, and update volume capability reporting for recent macOS versions

MFMount.framework

  • Add MFMountResultCreatingMountPointFailed to report that the requested mount point could not be created

Display a localized alert with recovery guidance unless dialogs are suppressed by the caller

  • Close the channel before returning handled mount setup failures

  • Add Simplified Chinese, Japanese, French, Spanish, Korean, Brazilian Portuguese, Italian, and Traditional Chinese localizations

  • Remove the direct dependency on AppKit

  • Please note that parts of the MFMount.framework API may still change in future releases.

libfuse

  • Wait for pending mount attempts to finish before the daemonizing parent process exits

The parent now exits with a status reflecting whether mounting succeeded, allowing callers and scripts to detect mount failures. This addresses macfuse/macfuse#1178.

  • Keep standard streams open while mounting so startup diagnostics remain visible, and redirect them only after successful completion

  • Warn when a process that has previously created additional threads calls fork(2), including calls made outside fuse_daemonize().

libfuse3

  • Fix decoding of rename requests when FUSE_DARWIN_CAP_RENAME_EXT is disabled or unsupported by the file system

  • Wait for pending mount attempts to finish before the daemonizing parent process exits

The parent now exits with a status reflecting whether mounting succeeded, allowing callers and scripts to detect mount failures. This addresses macfuse/macfuse#1178.

  • Keep standard streams open while mounting so startup diagnostics remain visible, and redirect them only after successful completion

  • Warn when a process that has previously created additional threads calls fork(2), including calls made outside fuse_daemonize().

Sponsor

  • Your support is important to sustaining the future development of this project. If macFUSE makes your life easier, consider sponsoring the project through GitHub Sponsors.
Source: README.md, updated 2026-09-07