diff options
Diffstat (limited to 'man0p/limits.h.0p')
-rw-r--r-- | man0p/limits.h.0p | 1044 |
1 files changed, 1044 insertions, 0 deletions
diff --git a/man0p/limits.h.0p b/man0p/limits.h.0p new file mode 100644 index 000000000..065c9d600 --- /dev/null +++ b/man0p/limits.h.0p @@ -0,0 +1,1044 @@ +.\" Copyright (c) 2001-2003 The Open Group, All Rights Reserved +.TH "<limits.h>" P 2003 "IEEE/The Open Group" "POSIX Programmer's Manual" +.\" <limits.h> +.SH NAME +limits.h \- implementation-defined constants +.SH SYNOPSIS +.LP +\fB#include <limits.h>\fP +.SH DESCRIPTION +.LP +Some of the functionality described on this reference page extends +the ISO\ C standard. Applications shall define +the appropriate feature test macro (see the System Interfaces volume +of IEEE\ Std\ 1003.1-2001, Section 2.2, The Compilation Environment) +to enable the visibility of these symbols in this +header. +.LP +Many of the symbols listed here are not defined by the ISO/IEC\ 9899:1999 +standard. Such symbols are not shown as CX shaded. +.LP +The \fI<limits.h>\fP header shall define various symbolic names. Different +categories of names are described below. +.LP +The names represent various limits on resources that the implementation +imposes on applications. +.LP +Implementations may choose any appropriate value for each limit, provided +it is not more restrictive than the Minimum Acceptable +Values listed below. Symbolic constant names beginning with _POSIX +may be found in \fI<unistd.h>\fP . +.LP +Applications should not assume any particular value for a limit. To +achieve maximum portability, an application should not +require more resource than the Minimum Acceptable Value quantity. +However, an application wishing to avail itself of the full +amount of a resource available on an implementation may make use of +the value given in \fI<limits.h>\fP on that particular +implementation, by using the symbolic names listed below. It should +be noted, however, that many of the listed limits are not +invariant, and at runtime, the value of the limit may differ from +those given in this header, for the following reasons: +.IP " *" 3 +The limit is pathname-dependent. +.LP +.IP " *" 3 +The limit differs between the compile and runtime machines. +.LP +.LP +For these reasons, an application may use the \fIfpathconf\fP(), \fIpathconf\fP(), +and \fIsysconf\fP() functions to +determine the actual value of a limit at runtime. +.LP +The items in the list ending in _MIN give the most negative values +that the mathematical types are guaranteed to be capable of +representing. Numbers of a more negative value may be supported on +some implementations, as indicated by the +\fI<limits.h>\fP header on the implementation, but applications requiring +such numbers are not guaranteed to be portable to +all implementations. For positive constants ending in _MIN, this indicates +the minimum acceptable value. +.SS Runtime Invariant Values (Possibly Indeterminate) +.LP +A definition of one of the symbolic names in the following list shall +be omitted from \fI<limits.h>\fP on specific +implementations where the corresponding value is equal to or greater +than the stated minimum, but is unspecified. +.LP +This indetermination might depend on the amount of available memory +space on a specific instance of a specific implementation. +The actual value supported by a specific instance shall be provided +by the \fIsysconf\fP() +function. +.TP 7 +{AIO_LISTIO_MAX} +.sp +Maximum number of I/O operations in a single list I/O call supported +by the implementation. +.br +Minimum Acceptable Value: {_POSIX_AIO_LISTIO_MAX} +.TP 7 +{AIO_MAX} +.sp +Maximum number of outstanding asynchronous I/O operations supported +by the implementation. +.br +Minimum Acceptable Value: {_POSIX_AIO_MAX} +.TP 7 +{AIO_PRIO_DELTA_MAX} +.sp +The maximum amount by which a process can decrease its asynchronous +I/O priority level from its own scheduling priority. +.br +Minimum Acceptable Value: 0 +.TP 7 +{ARG_MAX} +Maximum length of argument to the \fIexec\fP functions including environment +data. +.br +Minimum Acceptable Value: {_POSIX_ARG_MAX} +.TP 7 +{ATEXIT_MAX} +.sp +Maximum number of functions that may be registered with \fIatexit\fP(). +.br +Minimum Acceptable Value: 32 +.TP 7 +{CHILD_MAX} +Maximum number of simultaneous processes per real user ID. +.br +Minimum Acceptable Value: {_POSIX_CHILD_MAX} +.TP 7 +{DELAYTIMER_MAX} +.sp +Maximum number of timer expiration overruns. +.br +Minimum Acceptable Value: {_POSIX_DELAYTIMER_MAX} +.TP 7 +{HOST_NAME_MAX} +Maximum length of a host name (not including the terminating null) +as returned from the \fIgethostname\fP() function. +.br +Minimum Acceptable Value: {_POSIX_HOST_NAME_MAX} +.TP 7 +{IOV_MAX} +.sp +Maximum number of \fBiovec\fP structures that one process has available +for use with \fIreadv\fP() or \fIwritev\fP(). +.br +Minimum Acceptable Value: {_XOPEN_IOV_MAX} +.TP 7 +{LOGIN_NAME_MAX} +Maximum length of a login name. +.br +Minimum Acceptable Value: {_POSIX_LOGIN_NAME_MAX} +.TP 7 +{MQ_OPEN_MAX} +.sp +The maximum number of open message queue descriptors a process may +hold. +.br +Minimum Acceptable Value: {_POSIX_MQ_OPEN_MAX} +.TP 7 +{MQ_PRIO_MAX} +.sp +The maximum number of message priorities supported by the implementation. +.br +Minimum Acceptable Value: {_POSIX_MQ_PRIO_MAX} +.TP 7 +{OPEN_MAX} +Maximum number of files that one process can have open at any one +time. +.br +Minimum Acceptable Value: {_POSIX_OPEN_MAX} +.TP 7 +{PAGESIZE} +Size in bytes of a page. +.br +Minimum Acceptable Value: 1 +.TP 7 +{PAGE_SIZE} +.sp +Equivalent to {PAGESIZE}. If either {PAGESIZE} or {PAGE_SIZE} is defined, +the other is defined with the same value. +.TP 7 +{PTHREAD_DESTRUCTOR_ITERATIONS} +.sp +Maximum number of attempts made to destroy a thread's thread-specific +data values on thread exit. +.br +Minimum Acceptable Value: {_POSIX_THREAD_DESTRUCTOR_ITERATIONS} +.TP 7 +{PTHREAD_KEYS_MAX} +.sp +Maximum number of data keys that can be created by a process. +.br +Minimum Acceptable Value: {_POSIX_THREAD_KEYS_MAX} +.TP 7 +{PTHREAD_STACK_MIN} +.sp +Minimum size in bytes of thread stack storage. +.br +Minimum Acceptable Value: 0 +.TP 7 +{PTHREAD_THREADS_MAX} +.sp +Maximum number of threads that can be created per process. +.br +Minimum Acceptable Value: {_POSIX_THREAD_THREADS_MAX} +.TP 7 +{RE_DUP_MAX} +The number of repeated occurrences of a BRE permitted by the \fIregexec\fP() +and \fIregcomp\fP() functions when using the interval notation {\\(\fIm\fP,\fIn\fP\\}; +see \fIBREs Matching Multiple Characters\fP . +.br +Minimum Acceptable Value: {_POSIX2_RE_DUP_MAX} +.TP 7 +{RTSIG_MAX} +.sp +Maximum number of realtime signals reserved for application use in +this implementation. +.br +Minimum Acceptable Value: {_POSIX_RTSIG_MAX} +.TP 7 +{SEM_NSEMS_MAX} +.sp +Maximum number of semaphores that a process may have. +.br +Minimum Acceptable Value: {_POSIX_SEM_NSEMS_MAX} +.TP 7 +{SEM_VALUE_MAX} +.sp +The maximum value a semaphore may have. +.br +Minimum Acceptable Value: {_POSIX_SEM_VALUE_MAX} +.TP 7 +{SIGQUEUE_MAX} +.sp +Maximum number of queued signals that a process may send and have +pending at the receiver(s) at any time. +.br +Minimum Acceptable Value: {_POSIX_SIGQUEUE_MAX} +.TP 7 +{SS_REPL_MAX} +.sp +The maximum number of replenishment operations that may be simultaneously +pending for a particular sporadic server scheduler. +.br +Minimum Acceptable Value: {_POSIX_SS_REPL_MAX} +.TP 7 +{STREAM_MAX} +The number of streams that one process can have open at one time. +If defined, it has the same value as {FOPEN_MAX} (see \fI<stdio.h>\fP +). +.br +Minimum Acceptable Value: {_POSIX_STREAM_MAX} +.TP 7 +{SYMLOOP_MAX} +Maximum number of symbolic links that can be reliably traversed in +the resolution of a pathname in the absence of a loop. +.br +Minimum Acceptable Value: {_POSIX_SYMLOOP_MAX} +.TP 7 +{TIMER_MAX} +.sp +Maximum number of timers per process supported by the implementation. +.br +Minimum Acceptable Value: {_POSIX_TIMER_MAX} +.TP 7 +{TRACE_EVENT_NAME_MAX} +.sp +Maximum length of the trace event name. +.br +Minimum Acceptable Value: {_POSIX_TRACE_EVENT_NAME_MAX} +.TP 7 +{TRACE_NAME_MAX} +.sp +Maximum length of the trace generation version string or of the trace +stream name. +.br +Minimum Acceptable Value: {_POSIX_TRACE_NAME_MAX} +.TP 7 +{TRACE_SYS_MAX} +.sp +Maximum number of trace streams that may simultaneously exist in the +system. +.br +Minimum Acceptable Value: {_POSIX_TRACE_SYS_MAX} +.TP 7 +{TRACE_USER_EVENT_MAX} +.sp +Maximum number of user trace event type identifiers that may simultaneously +exist in a traced process, including the predefined +user trace event POSIX_TRACE_UNNAMED_USER_EVENT. +.br +Minimum Acceptable Value: {_POSIX_TRACE_USER_EVENT_MAX} +.TP 7 +{TTY_NAME_MAX} +Maximum length of terminal device name. +.br +Minimum Acceptable Value: {_POSIX_TTY_NAME_MAX} +.TP 7 +{TZNAME_MAX} +Maximum number of bytes supported for the name of a timezone (not +of the \fITZ\fP variable). +.br +Minimum Acceptable Value: {_POSIX_TZNAME_MAX} +.sp +.TP 7 +\fBNote:\fP +The length given by {TZNAME_MAX} does not include the quoting characters +mentioned in \fIOther Environment Variables\fP . +.sp +.SS Pathname Variable Values +.LP +The values in the following list may be constants within an implementation +or may vary from one pathname to another. For +example, file systems or directories may have different characteristics. +.LP +A definition of one of the values shall be omitted from the \fI<limits.h>\fP +header on specific implementations where the +corresponding value is equal to or greater than the stated minimum, +but where the value can vary depending on the file to which it +is applied. The actual value supported for a specific pathname shall +be provided by the \fIpathconf\fP() function. +.TP 7 +{FILESIZEBITS} +Minimum number of bits needed to represent, as a signed integer value, +the maximum size of a regular file allowed in the specified +directory. +.br +Minimum Acceptable Value: 32 +.TP 7 +{LINK_MAX} +Maximum number of links to a single file. +.br +Minimum Acceptable Value: {_POSIX_LINK_MAX} +.TP 7 +{MAX_CANON} +Maximum number of bytes in a terminal canonical input line. +.br +Minimum Acceptable Value: {_POSIX_MAX_CANON} +.TP 7 +{MAX_INPUT} +Minimum number of bytes for which space is available in a terminal +input queue; therefore, the maximum number of bytes a conforming +application may require to be typed as input before reading them. +.br +Minimum Acceptable Value: {_POSIX_MAX_INPUT} +.TP 7 +{NAME_MAX} +Maximum number of bytes in a filename (not including terminating null). +.br +Minimum Acceptable Value: {_POSIX_NAME_MAX} +.br +Minimum Acceptable Value: {_XOPEN_NAME_MAX} +.TP 7 +{PATH_MAX} +Maximum number of bytes in a pathname, including the terminating null +character. +.br +Minimum Acceptable Value: {_POSIX_PATH_MAX} +.br +Minimum Acceptable Value: {_XOPEN_PATH_MAX} +.TP 7 +{PIPE_BUF} +Maximum number of bytes that is guaranteed to be atomic when writing +to a pipe. +.br +Minimum Acceptable Value: {_POSIX_PIPE_BUF} +.TP 7 +{POSIX_ALLOC_SIZE_MIN} +.sp +Minimum number of bytes of storage actually allocated for any portion +of a file. +.br +Minimum Acceptable Value: Not specified. +.TP 7 +{POSIX_REC_INCR_XFER_SIZE} +.sp +Recommended increment for file transfer sizes between the {POSIX_REC_MIN_XFER_SIZE} +and {POSIX_REC_MAX_XFER_SIZE} values. +.br +Minimum Acceptable Value: Not specified. +.TP 7 +{POSIX_REC_MAX_XFER_SIZE} +.sp +Maximum recommended file transfer size. +.br +Minimum Acceptable Value: Not specified. +.TP 7 +{POSIX_REC_MIN_XFER_SIZE} +.sp +Minimum recommended file transfer size. +.br +Minimum Acceptable Value: Not specified. +.TP 7 +{POSIX_REC_XFER_ALIGN} +.sp +Recommended file transfer buffer alignment. +.br +Minimum Acceptable Value: Not specified. +.TP 7 +{SYMLINK_MAX} +Maximum number of bytes in a symbolic link. +.br +Minimum Acceptable Value: {_POSIX_SYMLINK_MAX} +.sp +.SS Runtime Increasable Values +.LP +The magnitude limitations in the following list shall be fixed by +specific implementations. An application should assume that +the value supplied by \fI<limits.h>\fP in a specific implementation +is the minimum that pertains whenever the application is +run under that implementation. A specific instance of a specific implementation +may increase the value relative to that supplied by +\fI<limits.h>\fP for that implementation. The actual value supported +by a specific instance shall be provided by the \fIsysconf\fP() function. +.TP 7 +{BC_BASE_MAX} +Maximum \fIobase\fP values allowed by the \fIbc\fP utility. +.br +Minimum Acceptable Value: {_POSIX2_BC_BASE_MAX} +.TP 7 +{BC_DIM_MAX} +Maximum number of elements permitted in an array by the \fIbc\fP utility. +.br +Minimum Acceptable Value: {_POSIX2_BC_DIM_MAX} +.TP 7 +{BC_SCALE_MAX} +Maximum \fIscale\fP value allowed by the \fIbc\fP utility. +.br +Minimum Acceptable Value: {_POSIX2_BC_SCALE_MAX} +.TP 7 +{BC_STRING_MAX} +Maximum length of a string constant accepted by the \fIbc\fP utility. +.br +Minimum Acceptable Value: {_POSIX2_BC_STRING_MAX} +.TP 7 +{CHARCLASS_NAME_MAX} +Maximum number of bytes in a character class name. +.br +Minimum Acceptable Value: {_POSIX2_CHARCLASS_NAME_MAX} +.TP 7 +{COLL_WEIGHTS_MAX} +Maximum number of weights that can be assigned to an entry of the +\fILC_COLLATE\fP \fBorder\fP keyword in the locale definition +file; see \fILocale\fP . +.br +Minimum Acceptable Value: {_POSIX2_COLL_WEIGHTS_MAX} +.TP 7 +{EXPR_NEST_MAX} +Maximum number of expressions that can be nested within parentheses +by the \fIexpr\fP +utility. +.br +Minimum Acceptable Value: {_POSIX2_EXPR_NEST_MAX} +.TP 7 +{LINE_MAX} +Unless otherwise noted, the maximum length, in bytes, of a utility's +input line (either standard input or another file), when the +utility is described as processing text files. The length includes +room for the trailing <newline>. +.br +Minimum Acceptable Value: {_POSIX2_LINE_MAX} +.TP 7 +{NGROUPS_MAX} +Maximum number of simultaneous supplementary group IDs per process. +.br +Minimum Acceptable Value: {_POSIX_NGROUPS_MAX} +.TP 7 +{RE_DUP_MAX} +Maximum number of repeated occurrences of a regular expression permitted +when using the interval notation \\{\fIm\fP,\fIn\fP\\}; +see \fIRegular Expressions\fP . +.br +Minimum Acceptable Value: {_POSIX2_RE_DUP_MAX} +.sp +.SS Maximum Values +.LP +The symbolic constants in the following list shall be defined in \fI<limits.h>\fP +with the values shown. These are symbolic +names for the most restrictive value for certain features on an implementation +supporting the Timers option. A conforming +implementation shall provide values no larger than these values. A +conforming application must not require a smaller value for +correct operation. +.TP 7 +{_POSIX_CLOCKRES_MIN} +.sp +The resolution of the CLOCK_REALTIME clock, in nanoseconds. +.br +Value: 20 000 000 +.LP +If the Monotonic Clock option is supported, the resolution of the +CLOCK_MONOTONIC clock, in nanoseconds, is represented by +{_POSIX_CLOCKRES_MIN}. +.sp +.SS Minimum Values +.LP +The symbolic constants in the following list shall be defined in \fI<limits.h>\fP +with the values shown. These are +symbolic names for the most restrictive value for certain features +on an implementation conforming to this volume of +IEEE\ Std\ 1003.1-2001. Related symbolic constants are defined elsewhere +in this volume of IEEE\ Std\ 1003.1-2001 +which reflect the actual implementation and which need not be as restrictive. +A conforming implementation shall provide values at +least this large. A strictly conforming application must not require +a larger value for correct operation. +.TP 7 +{_POSIX_AIO_LISTIO_MAX} +.sp +The number of I/O operations that can be specified in a list I/O call. +.br +Value: 2 +.TP 7 +{_POSIX_AIO_MAX} +.sp +The number of outstanding asynchronous I/O operations. +.br +Value: 1 +.TP 7 +{_POSIX_ARG_MAX} +Maximum length of argument to the \fIexec\fP functions including environment +data. +.br +Value: 4 096 +.TP 7 +{_POSIX_CHILD_MAX} +Maximum number of simultaneous processes per real user ID. +.br +Value: 25 +.TP 7 +{_POSIX_DELAYTIMER_MAX} +.sp +The number of timer expiration overruns. +.br +Value: 32 +.TP 7 +{_POSIX_HOST_NAME_MAX} +Maximum length of a host name (not including the terminating null) +as returned from the \fIgethostname\fP() function. +.br +Value: 255 +.TP 7 +{_POSIX_LINK_MAX} +Maximum number of links to a single file. +.br +Value: 8 +.TP 7 +{_POSIX_LOGIN_NAME_MAX} +The size of the storage required for a login name, in bytes, including +the terminating null. +.br +Value: 9 +.TP 7 +{_POSIX_MAX_CANON} +Maximum number of bytes in a terminal canonical input queue. +.br +Value: 255 +.TP 7 +{_POSIX_MAX_INPUT} +Maximum number of bytes allowed in a terminal input queue. +.br +Value: 255 +.TP 7 +{_POSIX_MQ_OPEN_MAX} +.sp +The number of message queues that can be open for a single process. +.br +Value: 8 +.TP 7 +{_POSIX_MQ_PRIO_MAX} +.sp +The maximum number of message priorities supported by the implementation. +.br +Value: 32 +.TP 7 +{_POSIX_NAME_MAX} +Maximum number of bytes in a filename (not including terminating null). +.br +Value: 14 +.TP 7 +{_POSIX_NGROUPS_MAX} +Maximum number of simultaneous supplementary group IDs per process. +.br +Value: 8 +.TP 7 +{_POSIX_OPEN_MAX} +Maximum number of files that one process can have open at any one +time. +.br +Value: 20 +.TP 7 +{_POSIX_PATH_MAX} +Maximum number of bytes in a pathname. +.br +Value: 256 +.TP 7 +{_POSIX_PIPE_BUF} +Maximum number of bytes that is guaranteed to be atomic when writing +to a pipe. +.br +Value: 512 +.TP 7 +{_POSIX_RE_DUP_MAX} +The number of repeated occurrences of a BRE permitted by the \fIregexec\fP() +and \fIregcomp\fP() functions when using the interval notation {\\(\fIm\fP,\fIn\fP\\}; +see \fIBREs Matching Multiple Characters\fP . +.br +Value: 255 +.TP 7 +{_POSIX_RTSIG_MAX} +.sp +The number of realtime signal numbers reserved for application use. +.br +Value: 8 +.TP 7 +{_POSIX_SEM_NSEMS_MAX} +.sp +The number of semaphores that a process may have. +.br +Value: 256 +.TP 7 +{_POSIX_SEM_VALUE_MAX} +.sp +The maximum value a semaphore may have. +.br +Value: 32 767 +.TP 7 +{_POSIX_SIGQUEUE_MAX} +.sp +The number of queued signals that a process may send and have pending +at the receiver(s) at any time. +.br +Value: 32 +.TP 7 +{_POSIX_SSIZE_MAX} +The value that can be stored in an object of type \fBssize_t\fP. +.br +Value: 32 767 +.TP 7 +{_POSIX_STREAM_MAX} +The number of streams that one process can have open at one time. +.br +Value: 8 +.TP 7 +{_POSIX_SS_REPL_MAX} +.sp +The number of replenishment operations that may be simultaneously +pending for a particular sporadic server scheduler. +.br +Value: 4 +.TP 7 +{_POSIX_SYMLINK_MAX} +The number of bytes in a symbolic link. +.br +Value: 255 +.TP 7 +{_POSIX_SYMLOOP_MAX} +The number of symbolic links that can be traversed in the resolution +of a pathname in the absence of a loop. +.br +Value: 8 +.TP 7 +{_POSIX_THREAD_DESTRUCTOR_ITERATIONS} +.sp +The number of attempts made to destroy a thread's thread-specific +data values on thread exit. +.br +Value: 4 +.TP 7 +{_POSIX_THREAD_KEYS_MAX} +.sp +The number of data keys per process. +.br +Value: 128 +.TP 7 +{_POSIX_THREAD_THREADS_MAX} +.sp +The number of threads per process. +.br +Value: 64 +.TP 7 +{_POSIX_TIMER_MAX} +.sp +The per-process number of timers. +.br +Value: 32 +.TP 7 +{_POSIX_TRACE_EVENT_NAME_MAX} +.sp +The length in bytes of a trace event name. +.br +Value: 30 +.TP 7 +{_POSIX_TRACE_NAME_MAX} +.sp +The length in bytes of a trace generation version string or a trace +stream name. +.br +Value: 8 +.TP 7 +{_POSIX_TRACE_SYS_MAX} +.sp +The number of trace streams that may simultaneously exist in the system. +.br +Value: 8 +.TP 7 +{_POSIX_TRACE_USER_EVENT_MAX} +.sp +The number of user trace event type identifiers that may simultaneously +exist in a traced process, including the predefined user +trace event POSIX_TRACE_UNNAMED_USER_EVENT. +.br +Value: 32 +.TP 7 +{_POSIX_TTY_NAME_MAX} +The size of the storage required for a terminal device name, in bytes, +including the terminating null. +.br +Value: 9 +.TP 7 +{_POSIX_TZNAME_MAX} +Maximum number of bytes supported for the name of a timezone (not +of the \fITZ\fP variable). +.br +Value: 6 +.TP 7 +\fBNote:\fP +.RS +The length given by {_POSIX_TZNAME_MAX} does not include the quoting +characters mentioned in \fIOther Environment Variables\fP . +.RE +.sp +.TP 7 +{_POSIX2_BC_BASE_MAX} +Maximum \fIobase\fP values allowed by the \fIbc\fP utility. +.br +Value: 99 +.TP 7 +{_POSIX2_BC_DIM_MAX} +Maximum number of elements permitted in an array by the \fIbc\fP utility. +.br +Value: 2 048 +.TP 7 +{_POSIX2_BC_SCALE_MAX} +Maximum \fIscale\fP value allowed by the \fIbc\fP utility. +.br +Value: 99 +.TP 7 +{_POSIX2_BC_STRING_MAX} +Maximum length of a string constant accepted by the \fIbc\fP utility. +.br +Value: 1 000 +.TP 7 +{_POSIX2_CHARCLASS_NAME_MAX} +Maximum number of bytes in a character class name. +.br +Value: 14 +.TP 7 +{_POSIX2_COLL_WEIGHTS_MAX} +Maximum number of weights that can be assigned to an entry of the +\fILC_COLLATE\fP \fBorder\fP keyword in the locale definition +file; see \fILocale\fP . +.br +Value: 2 +.TP 7 +{_POSIX2_EXPR_NEST_MAX} +Maximum number of expressions that can be nested within parentheses +by the \fIexpr\fP +utility. +.br +Value: 32 +.TP 7 +{_POSIX2_LINE_MAX} +Unless otherwise noted, the maximum length, in bytes, of a utility's +input line (either standard input or another file), when the +utility is described as processing text files. The length includes +room for the trailing <newline>. +.br +Value: 2 048 +.TP 7 +{_POSIX2_RE_DUP_MAX +Maximum number of repeated occurrences of a regular expression permitted +when using the interval notation \\{\fIm\fP,\fIn\fP\\}; +see \fIRegular Expressions\fP . +.br +Value: 255 +.TP 7 +{_XOPEN_IOV_MAX} +.sp +Maximum number of \fBiovec\fP structures that one process has available +for use with \fIreadv\fP() or \fIwritev\fP(). +.br +Value: 16 +.TP 7 +{_XOPEN_NAME_MAX} +.sp +Maximum number of bytes in a filename (not including the terminating +null). +.br +Value: 255 +.TP 7 +{_XOPEN_PATH_MAX} +.sp +Maximum number of bytes in a pathname. +.br +Value: 1024 +.sp +.SS Numerical Limits +.LP +The values in the following lists shall be defined in \fI<limits.h>\fP +and are constant expressions suitable for use in +\fB#if\fP preprocessing directives. Moreover, except for {CHAR_BIT}, +{DBL_DIG}, {DBL_MAX}, {FLT_DIG}, {FLT_MAX}, {LONG_BIT}, +{WORD_BIT}, and {MB_LEN_MAX}, the symbolic names are defined as +expressions of the correct type. +.LP +If the value of an object of type \fBchar\fP is treated as a signed +integer when used in an expression, the value of {CHAR_MIN} +is the same as that of {SCHAR_MIN} and the value of {CHAR_MAX} is +the same as that of {SCHAR_MAX}. Otherwise, the value of +{CHAR_MIN} is 0 and the value of {CHAR_MAX} is the same as that of +{UCHAR_MAX}. +.TP 7 +{CHAR_BIT} +Number of bits in a type \fBchar\fP. +.br +Value: +8 +.TP 7 +{CHAR_MAX} +Maximum value of type \fBchar\fP. +.br +Value: {UCHAR_MAX} or {SCHAR_MAX} +.TP 7 +{CHAR_MIN} +Minimum value of type \fBchar\fP. +.br +Value: {SCHAR_MIN} or 0 +.TP 7 +{INT_MAX} +Maximum value of an \fBint\fP. +.br +Minimum Acceptable Value: 2 147 483 647 +.TP 7 +{LONG_BIT} +.sp +Number of bits in a \fBlong\fP. +.br +Minimum Acceptable Value: 32 +.TP 7 +{LONG_MAX} +Maximum value of a \fBlong\fP. +.br +Minimum Acceptable Value: +2 147 483 647 +.TP 7 +{MB_LEN_MAX} +Maximum number of bytes in a character, for any supported locale. +.br +Minimum Acceptable Value: 1 +.TP 7 +{SCHAR_MAX} +Maximum value of type \fBsigned char\fP. +.br +Value: ++127 +.TP 7 +{SHRT_MAX} +Maximum value of type \fBshort\fP. +.br +Minimum Acceptable Value: +32 767 +.TP 7 +{SSIZE_MAX} +Maximum value of an object of type \fBssize_t\fP. +.br +Minimum Acceptable Value: {_POSIX_SSIZE_MAX} +.TP 7 +{UCHAR_MAX} +Maximum value of type \fBunsigned char\fP. +.br +Value: +255 +.TP 7 +{UINT_MAX} +Maximum value of type \fBunsigned\fP. +.br +Minimum Acceptable Value: 4 294 967 295 +.TP 7 +{ULONG_MAX} +Maximum value of type \fBunsigned long\fP. +.br +Minimum Acceptable Value: 4 294 967 295 +.TP 7 +{USHRT_MAX} +Maximum value for a type \fBunsigned short\fP. +.br +Minimum Acceptable Value: 65 535 +.TP 7 +{WORD_BIT} +.sp +Number of bits in a word or type \fBint\fP. +.br +Minimum Acceptable Value: 16 +.TP 7 +{INT_MIN} +Minimum value of type \fBint\fP. +.br +Maximum Acceptable Value: -2 147 483 647 +.TP 7 +{LONG_MIN} +Minimum value of type \fBlong\fP. +.br +Maximum Acceptable Value: -2 147 483 647 +.TP 7 +{SCHAR_MIN} +Minimum value of type \fBsigned char\fP. +.br +Value: +-128 +.TP 7 +{SHRT_MIN} +Minimum value of type \fBshort\fP. +.br +Maximum Acceptable Value: -32 767 +.TP 7 +{LLONG_MIN} +Minimum value of type \fBlong long\fP. +.br +Maximum Acceptable Value: -9223372036854775807 +.TP 7 +{LLONG_MAX} +Maximum value of type \fBlong long\fP. +.br +Minimum Acceptable Value: +9223372036854775807 +.TP 7 +{ULLONG_MAX} +Maximum value of type \fBunsigned long long\fP. +.br +Minimum Acceptable Value: 18446744073709551615 +.sp +.SS Other Invariant Values +.LP +The following constants shall be defined on all implementations in +\fI<limits.h>\fP: +.TP 7 +{CHARCLASS_NAME_MAX} +.sp +Maximum number of bytes in a character class name. +.br +Minimum Acceptable Value: 14 +.TP 7 +{NL_ARGMAX} +.sp +Maximum value of \fIdigit\fP in calls to the \fIprintf\fP() and \fIscanf\fP() +functions. +.br +Minimum Acceptable Value: 9 +.TP 7 +{NL_LANGMAX} +.sp +Maximum number of bytes in a \fILANG\fP name. +.br +Minimum Acceptable Value: 14 +.TP 7 +{NL_MSGMAX} +.sp +Maximum message number. +.br +Minimum Acceptable Value: 32 767 +.TP 7 +{NL_NMAX} +.sp +Maximum number of bytes in an N-to-1 collation mapping. +.br +Minimum Acceptable Value: No guaranteed value across all conforming +implementations. +.TP 7 +{NL_SETMAX} +.sp +Maximum set number. +.br +Minimum Acceptable Value: 255 +.TP 7 +{NL_TEXTMAX} +.sp +Maximum number of bytes in a message string. +.br +Minimum Acceptable Value: {_POSIX2_LINE_MAX} +.TP 7 +{NZERO} +.sp +Default process priority. +.br +Minimum Acceptable Value: 20 +.sp +.LP +\fIThe following sections are informative.\fP +.SH APPLICATION USAGE +.LP +None. +.SH RATIONALE +.LP +A request was made to reduce the value of {_POSIX_LINK_MAX} from the +value of 8 specified for it in the POSIX.1-1990 standard to +2. The standard developers decided to deny this request for several +reasons: +.IP " *" 3 +They wanted to avoid making any changes to the standard that could +break conforming applications, and the requested change could +have that effect. +.LP +.IP " *" 3 +The use of multiple hard links to a file cannot always be replaced +with use of symbolic links. Symbolic links are semantically +different from hard links in that they associate a pathname with another +pathname rather than a pathname with a file. This has +implications for access control, file permanence, and transparency. +.LP +.IP " *" 3 +The original standard developers had considered the issue of allowing +for implementations that did not in general support hard +links, and decided that this would reduce consensus on the standard. +.LP +.LP +Systems that support historical versions of the development option +of the ISO\ POSIX-2 standard retain the name +{_POSIX2_RE_DUP_MAX} as an alias for {_POSIX_RE_DUP_MAX}. +.TP 7 +{PATH_MAX} +IEEE PASC Interpretation 1003.1 #15 addressed the inconsistency in +the standard with the definition of pathname and the description +of {PATH_MAX}, allowing application writers to allocate either {PATH_MAX} +or {PATH_MAX}+1 bytes. The inconsistency has been removed +by correction to the {PATH_MAX} definition to include the null character. +With this change, applications that previously allocated +{PATH_MAX} bytes will continue to succeed. +.TP 7 +{SYMLINK_MAX} +This symbol refers to space for data that is stored in the file system, +as opposed to {PATH_MAX} which is the length of a name that +can be passed to a function. In some existing implementations, the +filenames pointed to by symbolic links are stored in the inodes +of the links, so it is important that {SYMLINK_MAX} not be constrained +to be as large as {PATH_MAX}. +.sp +.SH FUTURE DIRECTIONS +.LP +None. +.SH SEE ALSO +.LP +The System Interfaces volume of IEEE\ Std\ 1003.1-2001, \fIfpathconf\fP(), +\fIpathconf\fP(), \fIsysconf\fP() +.SH COPYRIGHT +Portions of this text are reprinted and reproduced in electronic form +from IEEE Std 1003.1, 2003 Edition, Standard for Information Technology +-- Portable Operating System Interface (POSIX), The Open Group Base +Specifications Issue 6, Copyright (C) 2001-2003 by the Institute of +Electrical and Electronics Engineers, Inc and The Open Group. In the +event of any discrepancy between this version and the original IEEE and +The Open Group Standard, the original IEEE and The Open Group Standard +is the referee document. The original Standard can be obtained online at +http://www.opengroup.org/unix/online.html . |