
From: Chris Mason <mason@suse.com>

From: jeffm@suse.com

reiserfs permission bug fix for xattrs


---

 25-akpm/fs/reiserfs/xattr.c |    3 ++-
 1 files changed, 2 insertions(+), 1 deletion(-)

diff -puN fs/reiserfs/xattr.c~reiserfs-permission fs/reiserfs/xattr.c
--- 25/fs/reiserfs/xattr.c~reiserfs-permission	Fri Apr 23 14:36:55 2004
+++ 25-akpm/fs/reiserfs/xattr.c	Fri Apr 23 14:36:55 2004
@@ -1411,7 +1411,8 @@ check_capabilities:
 	 * Read/write DACs are always overridable.
 	 * Executable DACs are overridable if at least one exec bit is set.
 	 */
-	if ((mask & (MAY_READ|MAY_WRITE)) || (inode->i_mode & S_IXUGO))
+	if (!(mask & MAY_EXEC) ||
+	    (inode->i_mode & S_IXUGO) || S_ISDIR(inode->i_mode))
 		if (capable(CAP_DAC_OVERRIDE))
 			return 0;
 

_
