Skip site navigation (1)Skip section navigation (2)
Date:      Wed, 29 Oct 2008 14:37:32 +0200
From:      Andriy Gapon <avg@icyb.net.ua>
To:        Edward Tomasz Napierala <trasz@FreeBSD.ORG>,  freebsd-arch@FreeBSD.ORG
Subject:   Re: Directory rename semantics.
Message-ID:  <4908590C.1030904@icyb.net.ua>
In-Reply-To: <20081028161855.GA45129@zim.MIT.EDU>
References:  <20081027193545.GA95872@pin.if.uz.zgora.pl> <20081028161855.GA45129@zim.MIT.EDU>

next in thread | previous in thread | raw e-mail | index | archive | help
on 28/10/2008 18:18 David Schultz said the following:
> On Mon, Oct 27, 2008, Edward Tomasz Napierala wrote:
>> Let's say we have two directories, "A/" and "B/".  We also have a
>> file, "A/F".  To remove that file, we need write access to "A/".
>> To move that file to "B/", we need write access to both "A/" and
>> "B/".  Now, assume we have a directory, "A/D".  To remove that
>> directory, we need write access to "A/".  To move that directory
>> to "B/", we need write access to "A/", "B/", _and "A/D"_.
>>
>> I'd like to remove the last check (requirement to have write access
>> to a directory we want to move somewhere else).  Reason for this
>> is that it doesn't seem very logical, and many systems - including
>> SunOS, and our ZFS - behave differently.  In other words, we have
>> different semantics on UFS and ZFS.
> 
> No comment on other operating systems or standards, but I wanted
> to point out that there is some logic to FreeBSD's present behavior:
> When you move A/D, you must be able to write to D, because you are
> modifying D's ".." entry to point to B instead of A.
> 
>>From a practical point of view, I think either behavior is fine,
> but we should consider whether any security-critical applications
> rely on the current behavior before changing it.

Control this check by a sysctl under security.bsd?

-- 
Andriy Gapon



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?4908590C.1030904>