[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: MiNT-Library: Bugs



Dominik.Strasser@mch.sni.de wrote:

> SINIX-L d255s228 5.41 C2000 i386 MX300I
> IRIX d255f022 4.0.5 06151813 IP12

...seem to be broken.

I hope that an article from Keith Bostic is enough of kind of an
authority proof...  After my .Sig is his interesting article about why
systems that suffer from "too much SysV" tend to strip trailing
slashes from pathnames.

Michael
-- 
Email: hohmuth@inf.tu-dresden.de
WWW:   http://www.inf.tu-dresden.de/~mh1/

------------------------------------------------------------------------------

From: bostic@vangogh.CS.Berkeley.EDU (Keith Bostic)
Message-Id: <199405211324.JAA03440@python.bostic.com>
To: bde@kralizec.zeta.org.au, ian@airs.com,
        Ollivier.Robert@keltia.frmug.fr.net
Subject: Re: [-current] UUCP bug when dealing with "//" in file names fixed.
Cc: freebsd-hackers@freefall.cdrom.com, taylor-uucp@gnu.ai.mit.edu

> I think the bug is actually in FreeBSD.  FreeBSD apparently returns EISDIR
> for mkdir("foo/", mode) and EEXISTS for mkdir("foo", mode) when "foo" is
> an existing directory, but POSIX.1-1990 2.2.2.57 says that pathnames that
> refer to a directory may have one or more trailing slashes, and FreeBSD
> attempts to be POSIX conformant.

I believe that this is correct behavior.

The real problem is that System V was changed to strip trailing
slashes from pathnames around the time of System III (in order
to fix a bug in nroff).

The latest draft of POSIX 1003.1 changes this to match the 4BSD
behavior where "foo/" is roughly equivalent to "foo/.", and the
above error conditions are required.  My guess is that POSIX will
finalize somewhere in the middle, i.e. the above behavior won't
be required, but it will be allowed.

--keith