From owner-freebsd-commit Sat Oct 7 03:44:57 1995 Return-Path: owner-commit Received: (from root@localhost) by freefall.freebsd.org (8.6.12/8.6.6) id DAA24884 for freebsd-commit-outgoing; Sat, 7 Oct 1995 03:44:57 -0700 Received: (from root@localhost) by freefall.freebsd.org (8.6.12/8.6.6) id DAA24872 for cvs-all-outgoing; Sat, 7 Oct 1995 03:44:53 -0700 Received: (from root@localhost) by freefall.freebsd.org (8.6.12/8.6.6) id DAA24862 for cvs-sys-outgoing; Sat, 7 Oct 1995 03:44:49 -0700 Received: from godzilla.zeta.org.au (godzilla.zeta.org.au [203.2.228.34]) by freefall.freebsd.org (8.6.12/8.6.6) with ESMTP id DAA24855 ; Sat, 7 Oct 1995 03:44:13 -0700 Received: (from bde@localhost) by godzilla.zeta.org.au (8.6.9/8.6.9) id UAA18889; Sat, 7 Oct 1995 20:41:12 +1000 Date: Sat, 7 Oct 1995 20:41:12 +1000 From: Bruce Evans Message-Id: <199510071041.UAA18889@godzilla.zeta.org.au> To: CVS-commiters@freefall.freebsd.org, bde@freefall.freebsd.org, cvs-sys@freefall.freebsd.org Subject: Re: cvs commit: src/sys/msdosfs msdosfs_vnops.c Sender: owner-commit@FreeBSD.org Precedence: bulk > Modified: sys/ufs/ufs ufs_vnops.c > sys/msdosfs msdosfs_vnops.c > Log: > Return EINVAL instead of panicing for rename("dir1", "dir2/.."). > > Fixes part of PR 760. > > This bug seems to be very old. This change shall be in 2.1. I hope I found all the file systems with the bug. lfs seems to use only ufs_rename(). It has an apparently unused wrapper lfs_rename(). devfs already checks for tcnp having name "..", although in a less efficient way. It isn't necessary to check for tcnp having name "." because VOP_LOOKUP() should already have failed in that case, although ufs, msdsofs and devfs return a bogus errno (EISDIR; should be EINVAL). I hate cloned bugs. How does the FreeBSD port of ext2fs handle lookup and rename? Bruce