Symlinks and ..

Eduardo Krell ekrell at hector.UUCP
Wed Nov 29 03:07:21 AEST 1989


In article <5270 at omepd.UUCP> merlyn at iwarp.intel.com (Randal Schwartz) writes:

>Do you propose maintaining a real path throughout all chdir(2) calls?

I don't know what you mean by that. Is this a question about the
concept or about a particular implementation of it?

We implemented it in the namei cache, which holds an entry for the
root directory and current working directory of all processes.
It actually has entries for each path component, so /usr/foo/bar1
and /usr/foo/bar2 share the 2 entries for /usr and /usr/foo.

>What if a portion of the path gets renamed?  Does the path become
>invalid?  (a new errno error: ECWDGONE == "The current directory is no
>longer valid".)

That's not a problem with the above implementation. You just have to
play with the pointers in the cache to make them point to the new
component(s).

>Nope.  ".." will probably mean what it means for a real long time. :-)

Maybe, but you'll have to find another excuse now.
    
Eduardo Krell                   AT&T Bell Laboratories, Murray Hill, NJ

UUCP: {att,decvax,ucbvax}!ulysses!ekrell  Internet: ekrell at ulysses.att.com



More information about the Comp.unix.questions mailing list