Extended headers (ustar format)

Robert Watson rwatson at freebsd.org
Wed Apr 19 15:16:38 GMT 2000


On Wed, 19 Apr 2000, Andreas Gruenbacher wrote:

> Dear all,
> 
> I just saw the ustar format includes Extended Headers in the current Austin
> Group Draft 3 Commands & Utilities document. This allows to store arbitrary file
> attributes as name/value pairs.
> 
> Are there any efforts to standardize the formats that shall be used for
> data defined by POSIX 1003.1e DS17? Both the attribute names and values
> need to be consistent across platforms. 
> 
> There's a reserved attribute name prefix `security' that seems to be
> reserved for 1003.1e or whatever emerges from it. Vendor specific
> extensions are also allowed. 

We've discussed this a little out of band and on the Linux acldev mailing
list, and I tend to agree with the suggestion that we should attempt to
adopt an existing standard and/or standardize on the names used.  Given
the distinction made in the POSIX.1e spec between ``access'' and
``default'' ACLs, I think it would be nice to represent that different in
the backup format, rather than having a single ACL.  I think it would also
be nice to have the attribute name imply specific semantics for the ACL.
I.e.,

security.posix1e.acl_default
security.posix1e.acl_accesss

Vs.

security.afs.acl

These are just names I've tossed out to try and suggest possible avenues,
as opposed to literal recommendations.

> For ACLs I'd be inclined to using a format derived from the ACL text
> form representation
> `user::rwx,user:joe:rwx,group::r-x,mask:rwx,other:r-x'. 

Definitely agree on this count -- one of the things that makes the default
directory ACL so useful is that it adopts the file owner and group in the
ACL created for a new file :-).

> The ustar format has the nice property that it can store both user/group
> names and their identifiers in archives (plus the option to restore
> files by identifiers rather than names). I think this is worth adopting
> for ACLs. We would arrive at something like: 
> `user::rwx,user:102=joe:rwx,group::r-x,mask:rwx,other:r-x'. 

I recognize the usefulness of this, but am unfamiliar with how ustar
recommends resolving conflicts that might arise on different systems,
where the same usernames and uid's are allocated, but don't match up in
the same way.  I.e., on sys1, joe=102, but sys2, beth=102, joe=103.  I
assume that this is up to the operator to resolve using a flag indicating
which they want.

Just to reiterate a point I made on the Linux ACL list -- the FreeBSD
extended attribute implementation is a recent addition on the development
branch, and is flexible to change to go for more cross-platform
consistency.  We just wanted to get something in there so we could start
making progress on other fronts, such as binding our MAC labels, ACLs, and
capabilities to files.

Thanks!

  Robert N M Watson 

robert at fledge.watson.org              http://www.watson.org/~robert/
PGP key fingerprint: AF B5 5F FF A6 4A 79 37  ED 5F 55 E9 58 04 6A B1
TIS Labs at Network Associates, Safeport Network Services

To Unsubscribe: send mail to majordomo at cyrus.watson.org
with "unsubscribe posix1e" in the body of the message



More information about the posix1e mailing list