Re: [parch 4/4] vfs: utimensat(): fix write access check for futimens()

From: Michael Kerrisk
Date: Wed Jun 04 2008 - 04:43:25 EST


On Wed, Jun 4, 2008 at 7:54 AM, Miklos Szeredi <miklos@xxxxxxxxxx> wrote:
>> At which point the "if (f)" and the "else" branches become equivalent
>> (the nameidata isn't interesting in the other case either). So that
>> could be written as:
>>
>> if (!is_owner_or_cap(inode)) {
>> error = permission(inode, MAY_WRITE, NULL);
>> if (error)
>> goto mnt_drop_write_and_out;
>> }
>
> And also the IS_IMMUTABLE() check can be removed, since it's checked
> by permission(MAY_WRITE) anyway.

I'm not sure that that is true, because immutability applies
regardless of capabilities or ownership, right?

--
Michael Kerrisk
Linux man-pages maintainer; http://www.kernel.org/doc/man-pages/
Found a bug? http://www.kernel.org/doc/man-pages/reporting_bugs.html
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/