[ On Mon, May 19, 1997 at 14:34:42 (-0500), Scott Reynolds wrote: ]
> Subject: RE: old cp not compatible with current namei()
>
> Hackery? Hardly. Note that the only utility affected by the change was
> cp(1), which is pretty strong evidence that it was a hidden bug all along.
Well, cp(1) may be the only utility affected by this change right now,
but the result has been a serious amount of confusion and
incompatibility with other POSIX compilant system in the behaviour of a
number of other commands, such as the ls(1) example I posted earlier.
Perhaps the other OSs are non-compliant in those respects, but in any
case there are now differences and something that's not particularly
required by 1003.2 (it says you use open(2) as per 1003.1, and I'm not
sure what the latter says about trailing slashes, if anything) is now
enforced to the detriment of intuitive behaviour.
NetBSD does match SCO UNIX 3.2's behaviour now though: ;-)
21:31 [244] $ cp .profile tmp/no-such-file-or-directory/
21:31 [245] $ ls tmp/no-such-file-or-directory/
tmp/no-such-file-or-directory/ not found
ksh: exit code: 2
21:31 [246] $ ls tmp/no-such-file-or-directory
tmp/no-such-file-or-directory
21:31 [247] $ uname -X
Release = 3.2v4.2
KernelID = 93/04/28
Machine = Pentium
BusType = ISA
Users = 16-user
OEM# = 0
Origin# = 1
NumCPU = 1
--
Greg A. Woods
+1 416 443-1734 VE3TCP robohack!woods
Planix, Inc. <woods@planix.com>; Secrets Of The Weird <woods@weird.com>