« Blog overview

Extended Attributes as user interface – be careful

June 29, 2009 - 10:54 pm

We have decided to use extended attributes in OFS to enable communication between user and filesystem with standard linux tool. Today I came across the first disadvantage of this choice.

I was wondering why gedit claimed that it were not possible to save the backup file. After some debugging I discovered that it tried to copy all extended attributes from the original to the backup file.

In fact, this is a very good idea, especially when using ACLs (which are stored as extended attributes). In OFS we have a little problem with that. Think of setting the “ofs.available” flag to a random file inside the tree. This makes no sense is is denied by OFS. As a result, gedit failes in creating this file.

My fix for this was to hide the ofs.* attributes. This means I removed them from the listxattr FUSE callback, so that they are still available but get not exposed when someone asks for all available attributes.

I don’t know if using attributes which are not visible will raise new problems – time will show…

Tags: , , , , , ,

Add a Comment