[LWN Logo]

Date: Sat, 06 May 2000 18:23:14 +0200
From: Andreas Gruenbacher <a.gruenbacher@bestbits.at>
To: Linux ACL Developers List <acl-devel@bestbits.at>
Subject: [ACL-Devel] Extended attributes implementation

Dear all,

I've just uploaded a first version implementing extended attributes for VFS and
ext2. The code already works pretty well.

The idea behind this patch is to have a basis for discussion on the
linux-fsdevel list. Before that, we'd still need some documentation, though  :-)

See <http://acl.bestbits.at/pre/attr/>. There's a patch against 2.2.15, and
another against 2.3.99-pre6. There are also two userland utilities I have used
for testing extended attributes (called aget and aset).

I will use this mechanism for storing ACLs; it's very easy to store other pieces
of information, too. The patch supports user-defined and system attributes.
User-defined attributes are subject to the same access restrictions as the
file/directory they are associated with. The access permissions to system
attributes are defined by handlers in the kernel (the patch contains no such
handlers). System attributes are recognized by their name. All system attributes
start with '$', e.g., "$acl", "$default-acl", etc.
 
The current ext2 code is modeled after ext2 directories. It stores all
attributes of a file on a single disk block. This is probably sufficient for
storing ACLs, CAP and MAC data. The storage format is extensible to bigger-size
attributes, though.

Discussions should probably be on acl-devel first (before we spread the word).

Hope you like the work.


Cheers,
Andreas

------------------------------------------------------------------------
 Andreas Gruenbacher, a.gruenbacher@computer.org
 Contact information: http://www.bestbits.at/~ag/
-------------------------------------------------------------------------
Linux ACL Developers List ---  http://acl.bestbits.at/acl-devel/

To unsubscribe, send a message with `unsubscribe acl-devel'
in the message body to majordomo@bestbits.at.
-------------------------------------------------------------------------