Date: Tue, 28 Oct 2008 12:18:55 -0400 From: David Schultz <das@FreeBSD.ORG> To: Edward Tomasz Napierala <trasz@FreeBSD.ORG> Cc: freebsd-arch@FreeBSD.ORG Subject: Re: Directory rename semantics. Message-ID: <20081028161855.GA45129@zim.MIT.EDU> In-Reply-To: <20081027193545.GA95872@pin.if.uz.zgora.pl> References: <20081027193545.GA95872@pin.if.uz.zgora.pl>
next in thread | previous in thread | raw e-mail | index | archive | help
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.
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20081028161855.GA45129>