Index index by Group index by Distribution index by Vendor index by creation date index by Name Mirrors Help Search

acl-2.4.0-1.2 RPM for x86_64

From OpenSuSE Tumbleweed for x86_64

Name: acl Distribution: openSUSE Tumbleweed
Version: 2.4.0 Vendor: openSUSE
Release: 1.2 Build date: Mon Jun 29 23:40:55 2026
Group: System/Filesystems Build host: reproducible
Size: 232511 Source RPM: acl-2.4.0-1.2.src.rpm
Packager: https://bugs.opensuse.org
Url: https://savannah.nongnu.org/projects/acl
Summary: Commands for Manipulating POSIX Access Control Lists
getfacl and setfacl commands for retrieving and setting POSIX access
control lists.

Provides

Requires

License

GPL-2.0-or-later AND LGPL-2.1-or-later

Changelog

* Mon Jun 29 2026 Goldwyn Rodrigues <rgoldwyn@suse.com>
  - Update to version 2.4.0:
    Major Issues Fixed:
    - The libacl library functions acl_get_file(), acl_set_file(),
      acl_extended_file(), and acl_delete_def_file() take a pathname argument
      and follow symbolic links.  When a privileged user calls one of those
      functions, an attacker that controls a pathname component can replace a
      file or directory with a symbolic link and redirect the operation to a
      different file.  This can lead to local privilege escalation.
      (CVE-2026-54369, bsc#1268867)
      The library functions cannot be fixed without breaking compatibility; the
      described behaviour is by design.
      Instead, version 2.4.0 of the acl package introduces the additional
      functions acl_get_file_at(), acl_set_file_at(), acl_extended_file_at(), and
      acl_delete_def_file_at().  These functions each take a dirfd file
      descriptor argument and an at_flags argument and accept the
      AT_SYMLINK_NOFOLLOW and AT_EMPTY_PATH flags.  Use these functions to
      control when to follow symbolic links. (CVE-2026-54370, bsc#1268867)
      In addition, the libacl functions acl_get_fd(), acl_set_fd(), and
      acl_extended_fd() functions always operate on the access ACL; the library
      previously did not offer a way to operate on the default ACL of a directory
      file descriptor.  The new functions remove that restriction.
      It will be up to each individual program to start using these new library
      functions where appropriate.
    - When walking directory trees, the getfacl, setfacl, chacl, and getfattr
      utilities constructed the full pathname of each file in the tree and use that
      pathname to access the file.  When a privileged user used those utilities,
      an attacker that controlled a pathname component could replace a directory with
      a symbolic link and redirect the operation to a different file, leading to
      a local privilege escalation. (CVE-2026-54371, bsc#1268867)
      This is fixed by using directory file descriptors and operating relative to
      those directory file descriptors.
    - When resolving the final pathname component, the getfacl, setfacl, chacl,
      getfattr, and setfattr utilities in some cases used functions that resolve
      symbolic links.  This includes the above mentioned libacl functions, but
      also stat(), chmod(), and chown().
      This is fixed by using symlink-safe functions throughout the code.
    - When restoring a backup, the setfacl and setfattr utilities read the full
      pathnames of files from the backup.  When those pathnames were resolved,
      pathname components that are symbolic links were traversed.  An attacker
      that controlled a pathname component could replace it with a symbolic link,
      causing a privileged user to operate on a file other than the one intended.
      This could lead to the same kind of local privilege escalation as discussed
      before.
      This is fixed by using openat2(RESOLVE_NO_SYMLINKS) to resolve the
      directory components of a pathname, but see Compatibility Notes below for
      the details.
    Minor Issues Fixed:
    - When a symbolic link was specified on the command line but symbolic link
      traversal was disabled using option -P (--physical), the getfacl and
      setfacl utilities previously silently ignored the symlink.  Now, an ELOOP
      ("Too many levels of symbolic links") error will result instead.
    - acl_delete_entry() now verifies that the specified entry belongs to the
      specified acl.
    - Numeric uids and gids that cannot be represented in types uid_t and gid_t
      are checked more carefully and invalid numbers are rejected.
    - Functions acl_get_file(), acl_get_file_at(), and acl_get_fd() will retry
      several times when the size of an ACL grows unexpectedly; previously, they
      only grew the allocated buffer once before giving up.
    - When passed a directory file descriptor, function perm_copy_fd() didn't
      copy the default ACL from one directory to the other.  It now does.
    - setfacl --restore accidentally ignored leading whitespace in filenames.  It
      no longer does.
    - setfacl --restore accidentally called chmod() when in --test mode.  It no
      longer does.
    - When the setfattr --restore option was used multiple times, a buffer was
      accessed after being freed. This no longer happens.
    - When the setfattr -h (--no-dereference) option was given after --restore,
      it was ignored.  Now, the options can be passed in any order.
    - The -h (--no-dereference) option of getfattr prevented getfattr from
      recursing into "symbolic link directories".  This is wrong.  When dirlink
      is a symbolic link that refers to a directory, "getfattr -Rh dirlink" will now
      visit that directory.  The -P (--physical) option can be used to prevent
      that.
    - Similarly, when a symbolic link referring to a directory was specified on
      the getfacl or setfacl command line, the -R option did not cause that
      directory to be visited.  This has been fixed so that those directories
      will now be visited.  The -P (--physical) option can be used to prevent
      that.
* Mon Apr 15 2024 Dominique Leuenberger <dimstar@opensuse.org>
  - BuildRequire gettext-devel instead of gettext-tools-mini: let
    OBS sort out if the -mini package is the right one to be used or
    not.
* Thu Feb 15 2024 Dominique Leuenberger <dimstar@opensuse.org>
  - Update to version 2.3.2:
    + libobj: declare s_str directly in string_obj_tag.
    + Use thread-safe getpwnam_r and getgrnam_r.
    + setfacl: preserve the failed status when processing multiple
      files.
    + man: Document pitfall with negative permissions and user
      namespaces.
    + tools: mark long_options static & const.
* Fri Apr 08 2022 Martin Liška <mliska@suse.cz>
  - Disable -D_FORTIFY_SOURCE=3 for now
    as explained here: https://gcc.gnu.org/bugzilla/show_bug.cgi?id=104964
* Sun May 16 2021 Dirk Müller <dmueller@suse.com>
  - modernize spec-file (move license to licensedir)
* Wed May 12 2021 Ferdinand Thiessen <rpm@fthiessen.de>
  - Update to version 2.3.1
    * Update German translation
    * getfacl: fix indent in --help output
    * getfacl: Add --one-file-system option, with this option getfacl
      will not cross mount points
    * Fix segfault on allocation failure
    * Avoid SIGSEGV with link-time optimisation enabled
  - Use SourceUrls
* Tue Jan 26 2021 Dominique Leuenberger <dimstar@opensuse.org>
  - Replace system-user-{bin,daemon} with user({bin,daemon}): be
    resilient to package name changes.
* Tue Sep 01 2020 Dirk Mueller <dmueller@suse.com>
  - update url
* Sun Mar 17 2019 Jan Engelhardt <jengelh@inai.de>
  - Update boilerplate descriptions for libacl-devel.
  - Remove out-of-date comments for libattr.
  - Remove old BuildRoot and %defattr tags.
  - Move library into the standard library directory.
* Thu Nov 08 2018 Cristian Rodríguez <crrodriguez@opensuse.org>
  - libacl-devel used to require libattr-devel, but that is no longer
    the case, packages that relied on this indirect dependency to
    be present were fixed years ago.

Files

/usr/bin/chacl
/usr/bin/getfacl
/usr/bin/setfacl
/usr/share/doc/packages/acl
/usr/share/doc/packages/acl/CHANGES
/usr/share/doc/packages/acl/extensions.txt
/usr/share/doc/packages/acl/libacl.txt
/usr/share/licenses/acl
/usr/share/licenses/acl/COPYING
/usr/share/locale/de/LC_MESSAGES/acl.mo
/usr/share/locale/en@boldquot/LC_MESSAGES/acl.mo
/usr/share/locale/en@quot/LC_MESSAGES/acl.mo
/usr/share/locale/es/LC_MESSAGES/acl.mo
/usr/share/locale/fr/LC_MESSAGES/acl.mo
/usr/share/locale/gl/LC_MESSAGES/acl.mo
/usr/share/locale/ka/LC_MESSAGES/acl.mo
/usr/share/locale/pl/LC_MESSAGES/acl.mo
/usr/share/locale/sv/LC_MESSAGES/acl.mo
/usr/share/man/man1/chacl.1.gz
/usr/share/man/man1/getfacl.1.gz
/usr/share/man/man1/setfacl.1.gz
/usr/share/man/man5/acl.5.gz


Generated by rpm2html 1.8.1

Fabrice Bellet, Mon Aug 3 00:14:01 2026