ACL_SIZE(3)
β¨ ACL_SIZE(3) β¨
okay so bestie, we're in the Library Functions Manual and this is the glow-up guide to acl_size π
πΈ NAME πΈ
acl_size β get the size of the external representation of an ACL
no cap, that's literally the whole vibe: it tells you how big a thing needs to be π«Ά
π LIBRARY π
Linux Access Control Lists library (libacl, -lacl).
like, that's the library you gotta link against, periodt.
π SYNOPSIS π
#include <sys/types.h>
#include <sys/acl.h>
ssize_t
acl_size(acl_t acl);
π DESCRIPTION π
The acl_size() function returns the size, in bytes, of the buffer required to hold the exportable, contiguous, persistent form of the ACL pointed to by the argument acl, when it's converted by acl_copy_ext(). so basically it's giving "how much room do I need for the snack" energy π
Any existing ACL entry descriptors that refer to entries in acl continue to refer to the same entries. Any existing ACL pointers that refer to the ACL referred to by acl continue to refer to the ACL. The order of ACL entries within acl remains unchanged.
and like, none of that changes anything, bestie β nothing moves, nothing gets shuffled, no chaos, no drama π the pointers stay pointed, the entries stay entries, the order stays the order. iconic behaviour honestly π
π RETURN VALUE π
On success, the acl_size() function returns the size in bytes of the contiguous, persistent form of the ACL. On error, a value of (ssize_t)-1 is returned and errno is set appropriately.
so like: number = good, (ssize_t)-1 = we have a situation π
π ERRORS π
If any of the following conditions occur, the acl_size() function returns a value of (ssize_t)-1 and sets errno to the corresponding value:
[EINVAL]β The argumentaclis not a valid pointer to an ACL.
that's it, that's the whole list, one single red flag and it's this one π©
π STANDARDS π
IEEE Std 1003.1e draft 17 (βPOSIX.1eβ, abandoned)
yeah bestie, abandoned π the draft said goodbye but the function said "not me, I'm still here" π«Ά
π¦ SEE ALSO π¦
iykyk, go read those next π
β¨ AUTHOR β¨
Derived from the FreeBSD manual pages written by Robert N M Watson <rwatson@FreeBSD.org>, and adapted for Linux by Andreas Gruenbacher <andreas.gruenbacher@gmail.com>.
and that's the whole page, bestie!! πΈ this was the Linux ACL version, dated March 23, 2002 β shoutout to the legends who wrote and adapted it, we owe them everything πβ¨π mwah, go check your ACL sizes responsibly π«Άπ
π¦ where this page comes from
- alpine 3.22: acl-doc 2.3.2-r1 Β· LGPL-2.1-or-later AND GPL-2.0-or-later
- alpine 3.23: acl-doc 2.3.2-r1 Β· LGPL-2.1-or-later AND GPL-2.0-or-later
- alpine 3.24: acl-doc 2.3.2-r1 Β· LGPL-2.1-or-later AND GPL-2.0-or-later
- arch rolling: acl 2.4.0-1 Β· LGPL-2.1-or-later AND GPL-2.0-or-later
- centos-stream 10: libacl-devel 2.4.0-2.el10 Β· LGPL-2.1-or-later
- centos-stream 9: libacl-devel 2.4.0-2.el9 Β· LGPLv2+
- centos-stream 9: libacl-devel 2.4.0-2.el9 Β· LGPLv2+
- debian bookworm: libacl1-dev 2.3.1-3
- debian trixie: libacl1-dev 2.3.2-2+b1
- fedora 43: libacl-devel 2.3.2-4.fc43 Β· LGPL-2.1-or-later
- fedora 43: libacl-devel 2.3.2-4.fc43 Β· LGPL-2.1-or-later
- fedora 43: libacl-devel 2.4.0-1.fc43 Β· LGPL-2.1-or-later
- fedora 43: libacl-devel 2.4.0-1.fc43 Β· LGPL-2.1-or-later
- fedora 44: libacl-devel 2.3.2-6.fc44 Β· LGPL-2.1-or-later
- fedora 44: libacl-devel 2.3.2-6.fc44 Β· LGPL-2.1-or-later
- fedora 44: libacl-devel 2.4.0-1.fc44 Β· LGPL-2.1-or-later
- fedora 44: libacl-devel 2.4.0-1.fc44 Β· LGPL-2.1-or-later
- nixpkgs unstable: acl 2.4.0
- opensuse-leap 16.0: libacl-devel 2.4.0-160000.1.1 Β· GPL-2.0-or-later AND LGPL-2.1-or-later
- opensuse-leap 16.0: libacl-devel 2.4.0-160000.1.1 Β· GPL-2.0-or-later AND LGPL-2.1-or-later
- opensuse-leap 16.0: libacl-devel 2.4.0-160000.1.1 Β· GPL-2.0-or-later AND LGPL-2.1-or-later
- opensuse-leap 16.0: libacl-devel 2.4.0-160000.1.1 Β· GPL-2.0-or-later AND LGPL-2.1-or-later
- ubuntu jammy: libacl1-dev 2.3.1-1
- ubuntu noble: libacl1-dev 2.3.2-1build1
- ubuntu noble: libacl1-dev 2.3.2-1build1.1
- ubuntu resolute: libacl1-dev 2.3.2-2
- ubuntu stonking: libacl1-dev 2.4.0-1
- (C) 2002 Andreas Gruenbacher, <andreas.gruenbacher@gmail.com>
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash on : a language model's rewrite of the original, under its terms