pathmax: Ensure correct value for PATH_MAX on HP-UX.
authorBruno Haible <bruno@clisp.org>
Mon, 20 Jun 2011 22:18:27 +0000 (00:18 +0200)
committerBruno Haible <bruno@clisp.org>
Mon, 20 Jun 2011 22:18:27 +0000 (00:18 +0200)
* lib/pathmax.h (PATH_MAX) [HP-UX]: Define to 1024.

ChangeLog
lib/pathmax.h

index 967c8b7..d561be3 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,8 @@
+2011-06-20  Bruno Haible  <bruno@clisp.org>
+
+       pathmax: Ensure correct value for PATH_MAX on HP-UX.
+       * lib/pathmax.h (PATH_MAX) [HP-UX]: Define to 1024.
+
 2011-06-20  Paul Eggert  <eggert@cs.ucla.edu>
 
        alloca: port to compilers that can optimize like GCC 4.6.0
index 2fbd1cb..c6793f6 100644 (file)
 #ifndef _PATHMAX_H
 # define _PATHMAX_H
 
+/* POSIX:2008 defines PATH_MAX to be the maximum number of bytes in a filename,
+   including the terminating NUL byte.
+   <http://pubs.opengroup.org/onlinepubs/9699919799/basedefs/limits.h.html>
+   PATH_MAX is not defined on systems which have no limit on filename length,
+   such as GNU/Hurd.  */
+
 # include <unistd.h>
 
 # include <limits.h>
 #  define PATH_MAX _POSIX_PATH_MAX
 # endif
 
+# ifdef __hpux
+/* On HP-UX, PATH_MAX designates the maximum number of bytes in a filename,
+   *not* including the terminating NUL byte, and is set to 1023.
+   Additionally, when _XOPEN_SOURCE is defined to 500 or more, PATH_MAX is
+   not defined at all any more.  */
+#  undef PATH_MAX
+#  define PATH_MAX 1024
+# endif
+
 #endif /* _PATHMAX_H */