On Wed, Nov 07, 2001 at 02:19:56PM +1100, Nathan Scott wrote:
> On Wed, Nov 07, 2001 at 02:32:18AM +0100, Andi Kleen wrote:
> > EA_FIRST_ENTRY to reset the fd the first entry, EA_READ_ENTRY to
> > read the next one.
> I'm not sure this would work for the extattr/lextattr variants where
> we don't have an fd to hold the state.
> eg. the opening of the file before allowing a list operation could
> have implications for XFSs DMAPI support (open might recall data from
There are other much more immediate obstacles: opening /dev/* is not
possible if the devices beneath the inodes don't exist.
O_OPENONLY (implying neither read nor write access) to get a stub file
handle for such inodes is possible, if a bit hackish. There's a
problem in the kernel there --- kernel file descriptor operations on
"special" inodes such as named sockets/pipes or device nodes don't
pass file operations on to the underlying filesystem.
As long as you're doing the ACL stuff via inode operations internally,
that's not a problem. However, inode operations generally don't take
a file descriptor as an argument so you don't have access to the
cursor in that case.
The DMAPI and special inode problems go away if you don't demand a
file descriptor to the file. (Having a file descriptor that
specifically belongs to the ACL stream is a different matter