limits.h: Clean up and fix _POSIX_* values.
These aren't actual limits, but rather the minimum limit
as specified in POSIX (e.g. _POSIX_NAME_MAX is the minimum
allowed value for NAME_MAX).
Add missing values as defined in POSIX-2024, at least for
features we support, and change wrong values to be the ones
specified in POSIX.
No behavioral intended change (nothing should be using these directly.)
Diff
headers/posix/limits.h | 80 ++++++++++++++++++++++++++++++++++++++++++++++++++------------------------------
1 file changed, 50 insertions(+), 30 deletions(-)
@@ -53,44 +53,16 @@
#define SYMLINK_MAX (1024)
#define SYMLOOP_MAX (16)
#define _POSIX_ARG_MAX (128 * 1024)
#define _POSIX_CHILD_MAX (1024)
#define _POSIX_HOST_NAME_MAX (255)
#define _POSIX_LINK_MAX (1)
#define _POSIX_LOGIN_NAME_MAX (9)
#define _POSIX_MAX_CANON (255)
#define _POSIX_MAX_INPUT (255)
#define _POSIX_NAME_MAX (255)
#define _POSIX_NGROUPS_MAX (8)
#define _POSIX_OPEN_MAX (128)
#define _POSIX_PATH_MAX (1024)
#define _POSIX_PIPE_BUF (512)
#define _POSIX_SSIZE_MAX __HAIKU_SADDR_MAX
#define _POSIX_STREAM_MAX (8)
#define _POSIX_TTY_NAME_MAX (256)
#define _POSIX_TZNAME_MAX (3)
#define _POSIX_SEM_VALUE_MAX INT_MAX
#define _POSIX_SIGQUEUE_MAX 32
#define _POSIX_RTSIG_MAX 8
#define _POSIX_CLOCKRES_MIN 20000000
#define _POSIX_TIMER_MAX 32
#define _POSIX_DELAYTIMER_MAX 32
#define _POSIX_SEM_NSEMS_MAX (256)
#define _POSIX2_LINE_MAX (2048)
#define BC_BASE_MAX (99)
#define BC_DIM_MAX (2048)
#define BC_SCALE_MAX (99)
#define BC_STRING_MAX (1000)
#define COLL_WEIGHTS_MAX (10)
#define EXPR_NEST_MAX (32)
#define LINE_MAX (2048)
#define MQ_OPEN_MAX (0) /* MSG */
#define MQ_PRIO_MAX (0) /* MSG */
#define MQ_OPEN_MAX (0)
#define MQ_PRIO_MAX (0)
#define RE_DUP_MAX (0x7fff)
@@ -103,6 +75,54 @@
* of getpriority(), setpriority() and nice(). */
#define NZERO 20
#endif
#define _POSIX_ARG_MAX (4096)
#define _POSIX_CHILD_MAX (25)
#define _POSIX_DELAYTIMER_MAX (32)
#define _POSIX_HOST_NAME_MAX (255)
#define _POSIX_LINK_MAX (8)
#define _POSIX_LOGIN_NAME_MAX (9)
#define _POSIX_MAX_CANON (255)
#define _POSIX_MAX_INPUT (255)
#define _POSIX_MQ_OPEN_MAX (8)
#define _POSIX_MQ_PRIO_MAX (32)
#define _POSIX_NAME_MAX (14)
#define _POSIX_NGROUPS_MAX (8)
#define _POSIX_OPEN_MAX (20)
#define _POSIX_PATH_MAX (256)
#define _POSIX_PIPE_BUF (512)
#define _POSIX_RE_DUP_MAX (255)
#define _POSIX_RTSIG_MAX (8)
#define _POSIX_SEM_NSEMS_MAX (256)
#define _POSIX_SEM_VALUE_MAX (32767)
#define _POSIX_SIGQUEUE_MAX (32)
#define _POSIX_SSIZE_MAX (32767)
#define _POSIX_STREAM_MAX (8)
#define _POSIX_SYMLINK_MAX (255)
#define _POSIX_SYMLOOP_MAX (8)
#define _POSIX_THREAD_DESTRUCTOR_ITERATIONS (4)
#define _POSIX_THREAD_KEYS_MAX (128)
#define _POSIX_THREAD_THREADS_MAX (64)
#define _POSIX_TIMER_MAX (32)
#define _POSIX_TTY_NAME_MAX (9)
#define _POSIX_TZNAME_MAX (6)
#define _POSIX_CLOCKRES_MIN (20000000)
#define _POSIX2_BC_BASE_MAX (99)
#define _POSIX2_BC_DIM_MAX (2048)
#define _POSIX2_BC_SCALE_MAX (99)
#define _POSIX2_BC_STRING_MAX (1000)
#define _POSIX2_COLL_WEIGHTS_MAX (2)
#define _POSIX2_EXPR_NEST_MAX (32)
#define _POSIX2_LINE_MAX (2048)
#define _POSIX2_RE_DUP_MAX _POSIX_RE_DUP_MAX
#define _XOPEN_IOV_MAX (16)
#define _XOPEN_NAME_MAX (255)
#define _XOPEN_PATH_MAX (1024)
/* _GCC_LIMITS_H_ is defined by GCC's internal limits.h to avoid
* collisions with any defines in this file.