Fixed "Operation not permitted" error on reading an empty file: FUSE read/write ops should return a number of bytes actually read/written or -errno on error.
Fixed unexpected removal of a directory if it is moved into itself: return EINVAL in this situation. It also happens when trying to change directory name case.
Made next_entry() function static.
Use bool type.
Add fsname parameter as is, without canonicalization and symbolic links expansion. This fixes TrueCrypt disks unmounting.
Avoid extra erase on writes to the end of a file.
Allow -n option for automount/autofs compatibility.
Use -V instead of -v option to print version for consistency with other utilities.
Use getopt() for options parsing.
Allow -v option for compatibility with mount utility (it passes -v to its helpers).
Added "quiet" option that makes chmod() and chown() always succeed. Useful for applications that fail if chmod() or chown() is not implemented.
Fixed grammar in mount.exfat-fuse manpage.
Allow arbitrary changing of lower 9 bits of mode. Allow owner/group changing to the same owner/group. Remove "quiet" option.
Move platform-specific code into a separate header.
Fixed handling of long non-ASCII file names.
Update volume label in struct ef on exfat_set_label().
Removed extra error message.
Move compiler-specific code into a separate header.
Remove excessive semicolons after static asserts.
Modified STATIC_ASSERT so that it can be used both inside and outside of functions.