[Zope] - first install, first connect
Andreas Kostyrka
andreas@ag.or.at
Wed, 9 Dec 1998 22:33:41 +0100 (CET)
On Wed, 9 Dec 1998, Mitch Chapman wrote:
> Sorry, I'm not running Linux on my PC at the moment. But under Solaris:
>
> ERRORS
> getcwd() will fail if one or more of the following are true:
>
> EACCES A parent directory cannot be read to get its
> name.
> ...
That is so, because of the way getcwd() is (was orginally?) implemented:
It basically works by looking recursivly on the parent directory, reading
it, and comparing inode numbers.
So let's say, I'm in cwd with inum=10050, than cwd starts by reading ..,
and notices that ``andreas'' happens to have inum 10050, so getcwd() just
learned that the last component is andreas. And it goes so one till it
finds ``/''.
That's why in bash, there is a difference between the cwd as displayed by
bash, and say by ``sh -c pwd'', because bash tracks cd commands, which
make it remember symbolic links, and the standalone pwd does the recursive
thing ;)
And for the recursive reading stuff you need read rights in all
directories leading to the current directory, ...
Andreas
--
Win95: n., A huge annoying boot virus that causes random spontaneous system
crashes, usually just before saving a massive project. Easily cured by
UNIX. See also MS-DOS, IBM-DOS, DR-DOS, Win 3.x, Win98.