Just over seven years after the release of version 53.6 (looks like I never created a binary archive for V53.7) version 54.1 is now available for i386-aros (and also m68k-amigaos) at:
The V54.0 version which brought the AROS/OS3 backport up to a similar level as the AmigaOS 4 port feature wise was thanks to the work of BSzili.
Changes since the previous release are:
filesysbox.library 53.7 (26.4.2018)
- Got rid of all the Get****Base macros.
- Fixed an out of bounds array access in FbxUpdatePaths() which would result
in memory after the FbxFS struct being trashed.
filesysbox.library 54.0 (22.12.2022)
- Added timezone conversion code using locale.library.
- Calculate a path hash for fib_DiskKey unless FBXF_USE_INO flag is set.
- Added FBXF_USE_FILL_DIR_STAT flag to avoid unnecessary getattr() calls for
filesystems like ssh2-handler that already provide all the stat data in
- Don't treat ENOSYS return value from FbxSetAmigaProtectionFlags() as an
- Rewrote the FbxFillInfoData() function and made it set id_BytesPerBlock to
512 instead of zero if a volume is not available.
- Modified path handling for Ext2FileSystem which only accepts "/" as path
argument for the file system root directory and not "".
- Rewrote FbxReturnMountMsg() using ReplyPkt() and added a NULL msg safety
- Added some more validity checks when reading FSSM from device node in
- Added validity checks in code for getting FSSM in FbxQueryMountMsg().
- Changed CHECKVOLUME() macro to return ERROR_NOT_A_DOS_DISK instead of
ERROR_OBJECT_IN_USE when the filesystem is inhibited.
- Added semaphore protection in FbxHandleTimerEvent().
- Added the FbxQueryFS() and FbxQueryFSTags() functions.
- Added the FbxGetSysTime() function.
filesysbox.library 54.1 (14.1.2023)
- A rename operation with exactly the same source and destination is now
treated as a no-op and returns success rather than ERROR_OBJECT_EXISTS.
- Rename operations where the the only change is in letter casing (e.g.
"rename tmp TMP" ) no longer fail with ERROR_OBJECT_EXISTS on case
insensitive file system implementations.
- Advance the file position in FSWrite() also if write() returns a lower
number of bytes written than was specified.
- Implemented the same charset conversion system that is used in the latest
AmigaOS 4 filesysbox versions. Internally filesysbox still uses UTF-8 for
all strings and conversion only happens when strings are passed to or from
the AmigaDOS API. In order for the conversion to be reversible any UTF-8
characters that do not have an equivalent in the local charset will be
converted into URL-style escape sequences where the character is specified
as a base32 encoded character sequence preceded by a percent symbol.