Relay-Version: version B 2.10 5/3/83; site utzoo.UUCP Path: utzoo!mnetor!uunet!munnari!basser!boyd From: boyd@basser.oz (Boyd Roberts) Newsgroups: comp.unix.wizards Subject: Re: Symbolic Links Message-ID: <1014@basser.oz> Date: Wed, 31-Dec-69 18:59:59 EDT Article-I.D.: basser.1014 Posted: Wed Dec 31 18:59:59 1969 Date-Received: Sat, 12-Sep-87 16:07:25 EDT References: <8731@brl-adm.ARPA> <2789@ulysses.homer.nj.att.com> <1781@munnari.oz> <6366@brl-smoke.ARPA> <599@murphy.UUCP> <6411@brl-smoke.ARPA> Reply-To: boyd@basser.oz (Boyd Roberts) Organization: Dept of Comp Sci, Uni of Sydney, Australia Lines: 22 Yes, the semantics of symbolic links were always the tricky bit. The implementation was always pretty straight-forward, save for this ridiculous ``cd ..'' scenario. That's the price you paid for using them. I can live with that cost. What I can't live with is the cost of implementing the ``cd ..'' bad craziness in the kernel. If you really want this functionality, use the shell. Some clever function/alias with (maybe) some help from a program would just do the trick. There's enough crap in the kernel without ridiculous & gross ``back-pointers'' & snarfed away pathnames & weird process state bits needed to implement this totally dubious hack. But, if you're hell bent on hacking the kernel why not save yourself some agony? Just get chdir() to return ENOTDIR when it detects a ``cd ..'' from inside a symbolicly linked directory. After all, if you're going to break the kernel there's no point busting a gut to do it. Boyd Roberts boyd@basser.oz ``When the going gets weird, the weird turn pro...''