2.2.1 (16 December 2002) * Clarify man page with respect to fileutils support. * Minor Debian build update to remove a shell script "bash-ism". 2.2.0 (29 November 2002) * Complete the localisation/internationalisation support, including the initial German translation by Andreas. 2.1.1 (31 October 2002) * Minor updates to the Debian packaging. 2.1.0 (19 October 2002) * Remove the -s and -S short options from setfacl, since it confuses many users (--set and -set-file still exist). * Update the setfacl(1) manual page. * Improve the wording of some error messages, and update the pot/po files. Also update the setfacl.test script. * Change the devel .rpm and .deb package names so that they now use a "lib" prefix. * Several packaging changes related to this to ensure upgrades work and depenency information isn't lost. 2.0.19 (04 September 2002) * Correct the description of the access check algorithm in acl(5). * Add --numeric option to getfacl (so all uid's/gid's are displayed numerically rather than by symbolic name). Also enlarge the static buffer used for numeric identifiers from 12 to 22 characters, which is enough for 64 bit id's. * Add a test case for setting just a base ACL. * Make the test/run script return a proper status code. * Check for ENOATTR and for ENODATA error numbers in places where ENOATTR is expected, so if ENOATTR is assigned a separate number we'll only need to rebuild. 2.0.18 (21 August 2002) * Setfacl failed to parse ACLs with whitespace around user/group names or ids (e.g., 'u: bin :rw', 'u: 0 :rwx'). 2.0.17 (12 August 2002) * Setfacl tried to retrieve the default ACL of regular files, which resulted in errno = EACCES since 2.0.13, and broke setfacl's --restore operation. 2.0.16 (08 August 2002) * Fix an IA64 alignment issue affecting several libacl functions. * Updated libacl version number from libacl.so.1.0.2 to libacl.so.1.0.3 2.0.15 (08 July 2002) * Fix configure warning (autoconf 2.13) - namely: "AC_TRY_RUN called without default to allow cross compiling" * Fix a couple of typos in the documentation * Fix a Debian-specific build issue 2.0.14 (04 July 2002) * Build infrastructure updates so that configure options can be used to specify paths rather than semi-hard-coded path names controlled by ROOT/ROOT_PREFIX env variables; eg. now allows /lib64 and /lib32. 2.0.13 (25 June 2002) * Make acl_get_file() fail for regular files and type ACL_TYPE_DEFAULT, as required by 1003.1e draft 17. Update manual page accordingly. * Make acl_set_file() fail for regular files and type ACL_TYPE_DEFAULT, as required by 1003.1e draft 17. Update manual page accordingly. * Updated libacl version number from libacl.so.1.0.1 to libacl.so.1.0.2. * Updated chacl(1) command to behave correctly with this libacl change. 2.0.12 (25 June 2002) * Increment the libacl version so that its possible for other packages like Samba to easily tell which library version has the libacl build bug fixed (without having to play configure games, etc). * In other words, libacl.so.1.0.0 is now libacl.so.1.0.1; nothing else has changed in this release. 2.0.11 (30 April 2002) * Fix a bug when reallocating space in __acl_to_any_text.c (the bug causes ACL entries to get skipped!) * Minor clean-up in the test/setfacl.test script 2.0.10 (22 April 2002) * Add accidentally removed dependency of libacl on libattr. 2.0.9 (16 April 2002) * Fix a struct alignment issue in libacl on 64 bit platforms. 2.0.8 (13 April 2002) * Fix a minor issue in build macro handling introduced in 2.0.7. 2.0.7 (10 April 2002) * Fix a bug in the --tabular format of getfacl where user/group names without a symbolic name did not get printed * Remove setfacl/user_group.[ch] as these are no longer used * Added configure check for libattr -- uses libtool archive if found 2.0.6 (08 April 2002) * Fix a bug that causes setfacl not to report error messages if acl_set_file() fails (the bug was introduced in version 2.0.3). 2.0.5 (26 March 2002) * Fix up acl_to_text compliance with POSIX draft. * Add the new acl(5) manual page. * Add a manual section 3 directory and Makefile. * Add the libacl manual pages. * Rename the existing acl_to_any_text function to __acl_to_any_text, and add a new acl_to_any_text function that only contains parameters that are actually useful. Make acl_to_text and acl_to_any_text invoke __acl_to_any_text internally. Update all uses of acl_to_any_text in getfacl/getfacl.c, setfacl/do_set.c, and chacl/chacl.c. * Move the acl_size function form the LIBACL_CFILES to the POSIX_CFILES section (it is a POSIX function) * Rearrange libacl routines so that several non-POSIX routines which were being exported are no longer exported (eg. acl_entry_to_any_str, acl_get_file_mode, acl_get_fd_mode, acl_set_file_mode, acl_set_fd_mode). 2.0.4 (12 March 2002) * Man page updates from Andreas * Test script updates from Andreas 2.0.3 (05 March 2002) * Clean up the --default option handling in setfacl. The old workarounds caused a bug for unusual input. * Changes to the --test output format setfacl generates: ACLs that are not changed are now displayed as `*'. * Fix a bug in setfacl/sequence.c:seq_delete_cmd(). * Minor changes to test scripts 2.0.2 (01 March 2002) * Apply several patches from Andreas, namely: * man page fixes * libacl code reformatting * acl_from_text errno handling 2.0.1 (27 February 2002) * Apply Andreas Gruenbacher's diffs. * Fix up chacl for deletion of access ACL to be in line with Andreas. * Incorporate the Debian packaging again. 2.0.0 (21 February 2002) * Reworked to use the new official system call API. * Sync up with the XFS project, the SGI folk now use this source. * Jumped to version 2 to allow XFS users to upgrade (Rationale: the XFS ACL user tools were at version 1.1.X, and packaging tools like rpm, dpkg, etc. must be presented with a greater version number to allow an upgrade to proceed). * Added the chacl command to ease migration for existing XFS users, and for compatibility with IRIX. * Added a flag to allow acl_print to produce a single-line ACL, in addition to the multi-line format. * Extended attribute documentation has moved into the extended attribute package from SGI ("attr"), this ACL package now deals exclusively with ACLs. * acl_from_text sometimes did not set errno when failing. * Moved files and simplified #includes in libacl 0.7.22 * Create a shared version of libacl, instead of linking statically. * Added missing error reporting to getfacl do_print() function. 0.7.16 * Minor cleanups/fixes in the make files * The test cases in test/src have been updated to match the corrected ACL entry syntax (see the 0.7.15 changes). 0.7.15 * acl_from_text() now accepts mask and other entries with either two or three fields (`other:rwx' or `other::rwx'). Posix 1003.1e specifies that these entries should have three entries, while under Solaris, they have only two fields. * setfacl now parses mask and other entries with two or three entries. * getfacl now produces mask and other entries with three fields (`mask::rwx' instead of the previous `mask:rwx'). * acl_get_fd(), acl_get_file(), acl_set_fd(), acl_set_file() now only fail with errno=ENOSYS if the underlying filesystem doesn't support ACLs. acl_get_fd() and acl_get_file() construct ACLs from the file mode permission bits if the kernel supports ACLs, but no ACL extended attributes are defined for the file (errno=ENOATTR). * acl_to_text() wrongly separated ACL entires with ',' instead of '\n'. * acl_from_text() only accepted three-letter permission strings (rwx, ---, rw-, etc.). Now also short strings (rw, -, etc.) are supported. 0.7.10 * acl_get_fd(), acl_get_file() now don't return basic ACL's anymore. * acl_set_fd(), acl_set_file() fail on filesystems that don't support ACLs, even if the ACL to be set is a basice ACL. * If msgfmt is not present on a system, the message catalog(s) are no longer being built. 0.7.8 (19 February 2001) * Buffer overflow bug in ACL library (acl_to_any_text). (Reported by Charles Bertsch ) 0.7.2 (22 November 2000) * Replace rman with groff for building HTML versions of the manual pages. * Add descriptions of the permissions required for manipulating ACLs to the manual pages. * Add long options to getfacl and setfacl, update the manual pages. * Remove some small bugs from the src/showacl Perl script. * showacl is now integrated in getfacl. * Bug in acl_to_any_text() for ACLs with 0 entries fixed. * Bug in acl_to_text(): Used '\n' as the ACL entry separator. * German messages updated. 0.7.1 (23 October 2000) * Basic GNU gettext support and a German translation of messages added. 0.7.0 (22 October 2000) * Updates to the documentation * Now an ACL_MASK entry is cloned from the ACL_GROUP_OBJ entry when needed also when the ACL_MASK entry is not re-calculated (-n option), so setfacl doesn't complain about an invalid ACL. 0.6.8 (11 October 2000) * src/walk_tree.c was stat()ing the targets of symbolic links in WALK_PHYSICAL mode. * Removed spurious definitions from src/gettext.h that caused problems with several versions of GNU gettext headers * setfacl calls acl_delete_def_file() if removing the default ACL of a directory that doesn't have a default ACL. i(If the user lacks appropriate permissions, that no-operation fails.) Fixed. * Tiny bug in src/showacl script (mask entry not applied to owning group entry) 0.6.5 (10 September 2000) * Command line options revised for POSIX compatibility (now defaults to -H half-logical walk, added -L logical walk, -P physical walk). * Funny post-order option no longer documented. 0.6.0 (24 March 2000) * Permissions were not set to the union of the ACL_GROUP_OBJ and ACL_MASK_OBJ entries for `setfacl -b'. * getfacl didn't display the default ACL for links do directories. 0.5.6 (31 Jan 2000) * Cleaned up the ACL entry ring handling in the library * Fixed a few minor issues with setfacl * Fixed a bug in acl_equiv_mode * Added acl_{get,set}_{file,fd}_mode functions 0.5.5 (19 October 1999) * Updates to the documentation * Some other things (?) 0.5.4 (up to 14 October 1999) * Fixed an incompatibility with more recent GNU getopt * Fixed a problem with errno handling in lib/text.c * Some cosmetic changes to streamline the distribution process * setfacl now implies `user:' if neither of `user', `group:', `other:' and `mask:' is given. Was a major annoyance (to me). * errno not set when acl_read was presented with an empty file. * some missing '\n' chars in setfacl 0.5.3 * Fixed a bug in setfacl.c that caused the default mask to be recalculated wrong. * Fixed a bug in acl_kernel.c:acl_check_one() that caused invalid ACLs to be accepted 0.5.2 (25 September 1999) * Added doc/Implementation.txt (some internals and ideas) * Fixed a bug in lib/manip.c that caused setfacl to reject some valid ACLs * Fixed a bug that caused setfacl to produce duplicate ACL entries * Fixed a bug/feature that caused `sefacl -s' to include the current base ACL entries in results. This is not done with `setfacl -bm'.