Meaning of _PC_PATH_MAX
Donn Terry
donn at hpfcdc.uucp
Sat Sep 1 09:44:44 AEST 1990
From: Donn Terry <donn at hpfcdc.uucp>
>IEEE Std 1003.1-1988 paragraph 5.7.1.2 note 5 describes the value
>returned by pathconf() when _PC_PATH_MAX is used as an argument as,
>"The maximum length of a relative pathname when the specified
>directory is the working directory."
>I have tried this on several POSIX.1 systems. None of them seem to
>enforce the maximum. In fact they all return a constant (say, 1024)
>even if the path given to pathconf() is already longer than that.
>Is this conforming behavior?
>If it is conforming, how should a portable application determine the
>longest pathname a user can specify?
This is hard to get a clear reading on from what you have written. It
could either be sloppy implementation or perfectly conformant.
POSIX specifically permits (in shell notation):
cd /
cd <1024 character pathname>
cd <another such thing>
...
There is no longest pathname a user can specify; there is a longest
one from / and from the current working directory. Pathconf doesn't
worry about what the cwd is.
>What about _PC_NAME_MAX? May readdir() return a longer name than the
>value returned by pathconf() for that directory?
It shouldn't. No location relative issues here.
Donn Terry
(As usual... speaking only for myself.)
Volume-Number: Volume 21, Number 79
More information about the Comp.std.unix
mailing list