But if, after chroot()'ing, "." acts differently for root than it does for every other user, then isn't root being treated as a special case? Mustn't there be a check against the uid somewhere? That's the special case I'm talking about.
It seems to me that you are saying, on Linux, in a chroot() environment, '.' is a special case for every user except root... I suppose you might look at it that way, but it seems a bit backward and I still don't understand where the reduction in code complexity comes from.
Regarding '..', I don't understand why that would be any more of a special case than it usually is (that is '/..' being equivalent to '/').
I'm sure I'll have to start digging through source code before I understand your point.
"My two cents aren't worth a dime.";