Re: VFAT rename

Alexander Viro (viro@math.psu.edu)
Sun, 16 May 1999 10:22:50 -0400 (EDT)


On Sun, 16 May 1999, A. Wik wrote:

> On Sun, 16 May 1999, Alexander Viro wrote:
>
> >
> >
> > On Fri, 14 May 1999, A. Wik wrote:
> >
> > > It's impossible to rename a file on a VFAT filesystem if
> > > the only difference between the old and new names is case
> > > (eg. longfilename and LongFilename). The operation is
> > > cancelled in fs/namei.c because the lookups return the
> > > same dentry for both names. What would be the most
> > > reasonable way to fix this?

[snip]

> Surely, it can be fixed - how about a mount-option to enable to
> enable the fix?

Sorry, I didn't realize what you were asking for. Comments re POSIX are
correct, but in that case everything is much worse. What kind of
semantics do you want here? Two dentries for the object at the same
moment? Sorry, no. Especially for directories. Feel free to propose a fix,
indeed, but I'ld be *very* interested if you could find a clean way to do
it. Clean as in "not introducing local DoS holes". It's that serious.
Case-preserving & case-insentive is a kludge and a bad one. It really
doesn't map on the UNIX semantics and IMO it will always remain a kludge.
Something will not work and lack of feature is better than exploitable
race.
Again, feel free to provide a clean solution. Frankly, I'm very
sceptical wrt existence of such beast.

-
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/