[comp.unix.questions] When csh can't access .

drw@cullvax.UUCP (Dale Worley) (12/03/86)

It seems that when csh (under Ultrix 1.2, which is a BSD 4.2 variant)
starts up, if it cannot get any access to the current directory, it
exits silently.  This doesn't appear to be in the documentation, and
it certainly isn't useful.  At the very least, it should produce some
sort of error message.  At best, it should start up, since it isn't
really necessary that "." be readable in order to have the shell run.

Am I confused?

Dale
-- 
Dale Worley		Cullinet Software
UUCP: ...!seismo!harvard!mit-eddie!cullvax!drw
ARPA: cullvax!drw@eddie.mit.edu

chris@mimsy.UUCP (Chris Torek) (12/04/86)

In article <624@cullvax.UUCP> drw@cullvax.UUCP (Dale Worley) writes:
>It seems that when csh (under Ultrix 1.2, which is a BSD 4.2 variant)
>starts up, if it cannot get any access to the current directory, it
>exits silently.

Yes.  This is a standard C-shell bug.  The C shell believes it must
know the name of the current directory (for, e.g., $cwd), but does
not try hard enough to get it.  It might invoke `pwd' if its own
code fails; or it might just chdir($HOME) or chdir(/) and complain;
but it just exits.

The routine that does this is called getwd(), and is either in the C
shell source or in the C library, or both.  (I cannot be more specific
because our source machine is down with broken CDC 9771 drives.)
-- 
In-Real-Life: Chris Torek, Univ of MD Comp Sci Dept (+1 301 454 7690)
UUCP:	seismo!mimsy!chris	ARPA/CSNet:	chris@mimsy.umd.edu