On 6/8/2010 10:29 AM, Andrew Deason wrote:
On Tue, 08 Jun 2010 09:20:51 -0400
"Tony D'Amato"<[email protected]> wrote:
chdir(AFS_PATH);
chroot(AFS_PATH);
chdir("/");
The problem is that the third call (chdir("/")) returns a ENOENT error.
We're given an empty pathname component when this occurs, so we're
looking up "" in the parent dir; afs_lookup can't cope with that. If I
fake it so we pass in "." to afs_lookup when we detect this happening,
it seems to work.
Hmm, is something like that a plausible solution, or should afs_lookup
just be made to interpret looking up a "" entry as looking up the
directory itself?
Some other test results:
Using chdir("/.") works as well as chdir("/home") where
home is a symlink to .
The tests work on Solaris 9, but fail on Solaris 10. The results are the same
if the chroot is to the top level directory in a volume or a sub directory.
Sounds like your fix might work.
--
Douglas E. Engert <[email protected]>
Argonne National Laboratory
9700 South Cass Avenue
Argonne, Illinois 60439
(630) 252-5444
_______________________________________________
OpenAFS-devel mailing list
[email protected]
https://lists.openafs.org/mailman/listinfo/openafs-devel