Messages in this thread Patch in this message | | | Subject | 666 permissions broken (2.2.10ac12,2.2.11pre2) | Date | Wed, 21 Jul 1999 00:00:07 +0100 (BST) | From | Alan Cox <> |
| |
> Thanks for the reply. I found it odd too. Let me know if you find > anything.
Got it. I'm very glad you found that 8)
--- fs/ext2/inode.c.old Tue Jul 20 06:23:19 1999 +++ fs/ext2/inode.c Wed Jul 21 05:55:27 1999 @@ -707,15 +707,18 @@ unsigned int flags; retval = -EPERM; - if (iattr->ia_valid & ATTR_ATTR_FLAG && - ((!(iattr->ia_attr_flags & ATTR_FLAG_APPEND) != + if (iattr->ia_valid & ATTR_ATTR_FLAG) + { + if((!(iattr->ia_attr_flags & ATTR_FLAG_APPEND) != !(inode->u.ext2_i.i_flags & EXT2_APPEND_FL)) || - (!(iattr->ia_attr_flags & ATTR_FLAG_IMMUTABLE) != - !(inode->u.ext2_i.i_flags & EXT2_IMMUTABLE_FL)))) { + (!(iattr->ia_attr_flags & ATTR_FLAG_IMMUTABLE) != + !(inode->u.ext2_i.i_flags & EXT2_IMMUTABLE_FL))) { if (!capable(CAP_LINUX_IMMUTABLE)) goto out; - } else if ((current->fsuid != inode->i_uid) && !capable(CAP_FOWNER)) + } + else if ((current->fsuid != inode->i_uid) && !capable(CAP_FOWNER)) goto out; + } if (iattr->ia_valid & ATTR_SIZE) { off_t size = iattr->ia_size; - To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.rutgers.edu Please read the FAQ at http://www.tux.org/lkml/
| |