Messages in this thread | | | Date | Sun, 1 Mar 1998 19:55:10 -0500 | From | "Theodore Y. Ts'o" <> | Subject | Re: VFS 64-bit clean |
| |
Date: Sat, 28 Feb 1998 18:09:11 +0100 From: Remy Card <card@excalibur.lip6.fr>
Well, the problem is that I chose quite a bad name for this field. Actually, i_dir_acl contains a pointer to the default ACL that can be set on a directory and is inherited by files and subdirectories. A file can have i_file_acl set (if it has an explicit ACL) or i_dir_acl set (if it has inherited the default ACL from its parent directory).
Why can a file ACL be stored in two places? We had originally talked about having i_dir_acl store the default ACL for a directory, but I had always assumed that when you created a directory, you would store the value of the containing directory's i_dir_acl in the i_file_acl field.
This would leave the i_dir_acl unused in non-directory inodes, and it would simply the ACL code, since it would always be true that a particular inode's ACL is always stored in i_file_acl, instead of sometimes being stored in i_file_acl or i_dir_acl.
I should probably rename the two fields in my next patch: i_file_acl -> i_acl and i_dir_acl -> i_default_acl.
Renaming the field seems reasonable, but I still don't understand why non-directory inodes would need to use i_default_acl.
- Ted
- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.rutgers.edu
| |