cvs commit: src/sys/kern vfs_syscalls.c
dillon at apollo.backplane.com
Tue Aug 16 12:40:57 PDT 2005
Uh, no. The part about the files being the same is clearly
NOT about symlinks at all. Those are a random tumble of disjoint
requirements, they are not related to each other in any way. Rename
does NOT resolve symlinks. It never has, it never will.
They also can't be refering to hardlinks, or the standard would say
They have to be refering to the paths resolving to the same
identical namespace, in which case we are right, linux is right,
and FreeBSD is wrong.
It's simple and straightfoward, not ultra complex. It is not
rename's responsibility to validate or resolve symlinks, or to
treat hardlinks as a special case. rename is entirely a namespace
operation. The only requirements are that it disallow impossible
combinations, such as trying to rename a file over a directory,
or rename a directory into a sub-directory of itself.
More information about the Commits