Relay-Version: version B 2.10 5/3/83; site utzoo.UUCP Path: utzoo!mnetor!seismo!husc6!cmcl2!brl-adm!brl-smoke!gwyn From: gwyn@brl-smoke.ARPA (Doug Gwyn ) Newsgroups: comp.unix.wizards Subject: Re: .. not considered as a botch Message-ID: <6082@brl-smoke.ARPA> Date: Tue, 7-Jul-87 17:25:38 EDT Article-I.D.: brl-smok.6082 Posted: Tue Jul 7 17:25:38 1987 Date-Received: Fri, 10-Jul-87 06:02:31 EDT References: <8075@brl-adm.ARPA> <6037@brl-smoke.ARPA> <13640@mordor.s1.gov> <6054@brl-smoke.ARPA> <14336@mordor.s1.gov> Reply-To: gwyn@brl.arpa (Doug Gwyn (VLD/VMB)) Organization: Ballistic Research Lab (BRL), APG, MD. Lines: 28 In article <14336@mordor.s1.gov> jdb@mordor.UUCP (John Bruner) writes: >If the semantics of ".." are to be changed, the proper place for >the change is the kernel, not in some (but, inevitably, not all) >user-level programs. That is quite correct. My point is that the disagreement in semantics (caused by the shells having special .. code) originated when people found that the kernel behavior posed a practical problem at the user level. This would argue that it is not appropriate at the application program, i.e. system call, level either. Indeed, Korn's proposal was to adapt kernel handling of .. when symlinks are added to UNIX System V (note that this is different from "changing the current semantics", since that situation doesn't currently arise), in which case the special stuff in shells could be removed. I haven't found much problem in practice brought on by the semantic discrepancy, since (as I noted earlier) one has to be thinking rather weirdly to set up directory symlinks in such a way that ../foo pathnames fed to an editor etc. would be affected by the semantic difference. The usual human/program use of such pathnames is to reach a different node in the tree when the absolute root name is not known or is relatively inconvenient to specify. Other nodes are usually accessed by full absolute pathnames (irrespective of whether symlinks are traversed in those pathnames). Under normal civilized use of symlinks, both name specification modes don't .. through a symlinked point. It's probably worth noting that more radical reorganizations of the UNIX notion of directory-based filesystems could moot this whole issue.