Re: Resource Fork as Extended Attributes
Re: Resource Fork as Extended Attributes
- Subject: Re: Resource Fork as Extended Attributes
- From: Sean Fagan <email@hidden>
- Date: Wed, 15 Jul 2009 20:22:37 -0700
On Jul 15, 2009, at 6:00 PM, shailesh jain wrote:
TN1150 says following:
"HFS Plus has an attribute file, another B-tree, that can be used to
store additional information for a file or directory. Since it is
part of the volume format, this information can be kept with the
file or directory as is it moved or renamed, and can be deleted when
the file or directory is deleted. The contents of the attribute
file's records have not been fully defined yet, but the goal is to
provide an arbitrary number of forks, identified by Unicode names,
for any file or directory."
Does that mean HFS+ now supports arbitrary number of forks rather
that just 'data fork + resource fork' ? And arbitrary number of
forks can be accessed by getxattr and friends ?
No, it doesn't mean that.
The attributes btree file mentioned is used for extended attributes --
as you note, getxattr and friends. However, the difference between
them and the resource fork is pretty large.
The Resource Fork can be opened up and treated as a normal file --
read, write, lseek, etc. You can read and write a portion of it --
currently, it's the only "extended attribute" that can take a
positional argument to getxattr and setxattr.
The other EAs are manipulated solely through getxattr et al, and doing
so is atomic: you write / read the entire EA, or you don't. You
cannot use the read and write system calls on them. And so forth.
Sean.
_______________________________________________
Do not post admin requests to the list. They will be ignored.
Filesystem-dev mailing list (email@hidden)
Help/Unsubscribe/Update your Subscription:
This email sent to email@hidden