Is there an equivalent to WinAPI’s MAX_PATH under linux/unix?

There is a PATH_MAX, but it is a bit problematic. From the bugs section of the realpath(3) man page:

The POSIX.1-2001 standard version of this function is broken by
design, since it is impossible to determine a suitable size for the
output buffer, resolved_path. According to POSIX.1-2001 a buffer of
size PATH_MAX suffices, but PATH_MAX need not be a defined
constant, and may have to be obtained using pathconf(3). And
asking pathconf(3) does not really help, since, on the one hand
POSIX warns that the result of pathconf(3) may be huge and
unsuitable for mallocing memory, and on the other hand
pathconf(3) may return -1 to signify that PATH_MAXis not
bounded.

Leave a Comment