Am Fr., 15. März 2019 um 11:12 Uhr schrieb Pavel Raiskup <prais...@redhat.com>:
>
> Thanks for the report! +cc acl-devel
>
> On Thursday, March 14, 2019 2:51:10 PM CET Joerg Schilling wrote:
> > Trying to unpack the reference archives for the POSIX ACL proposal from
> > 1993 that was withdrawn in 1997 results in something like:
> >
> > /tmp/tar-1.31/src/tar --acls -xpf acl-test3.tar.gz
> > /tmp/tar-1.31/src/tar: default/dir2: Warnung: Funktion acl_from_text 
> > fehlgeschlagen
> > /tmp/tar-1.31/src/tar: default/dir3: Warnung: Funktion acl_from_text 
> > fehlgeschlagen
> > /tmp/tar-1.31/src/tar: default: Warnung: Funktion acl_from_text 
> > fehlgeschlagen
> > /tmp/tar-1.31/src/tar: default: Warnung: Funktion acl_from_text 
> > fehlgeschlagen
>
> This is because we use acl_from_text() without pre-filtering, which
> doesn't accept the fourth UID/GID number value in e.g.
> ACL record 'user:joe:rwx:503' (stored in the archive):
>
>    $ tar -t -vv --acls -f acl-test5.tar
>    ...
>    drwxrwxr-x+ gruenbacher/assis 0 2001-11-04 04:43 default/dir2/
>      a: user::rwx,user:joe:rwx:503,group::r-x,mask::rwx,other::r-x
>    ...
>    $ tar -xf --acls -f acl-test5.tar
>    ...
>    tar: default/dir2: Warning: Cannot acl_from_text: Invalid argument
>    ...
>
> I did not notice this so far, since we don't add the fourth numeric
> argument to the SCHILY.acl.access header;  neither star does that (on
> Linux at least, despite the claim in manual page).
>
> I'm curious whether we should think about fixing this in acl_from_text()
> function directly, or whether this should be handled solely in archivers.

It's a respobsibility of the archiver; these fields also don't get
added by acl_to_text(). Whether to remove the number or replace the
name with the number should probably depend on the --numeric-owner
parameter. The Linux version of acl_from_text() will accept numeric
IDs. There might be acl_from_text() implementations that don't allow
that though, so some form of fallback behavior might make sense.

Thanks,
Andreas

Reply via email to