1 /* Copyright (C) 1996, 1997, 1999, 2001 Free Software Foundation, Inc. 2 This file is part of the GNU C Library. 3 4 The GNU C Library is free software; you can redistribute it and/or 5 modify it under the terms of the GNU Lesser General Public 6 License as published by the Free Software Foundation; either 7 version 2.1 of the License, or (at your option) any later version. 8 9 The GNU C Library is distributed in the hope that it will be useful, 10 but WITHOUT ANY WARRANTY; without even the implied warranty of 11 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU 12 Lesser General Public License for more details. 13 14 You should have received a copy of the GNU Lesser General Public 15 License along with the GNU C Library; if not, write to the Free 16 Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 17 02111-1307 USA. */ 18 19 /* 20 * Never include this file directly; use <limits.h> instead. 21 */ 22 23 /* Additional definitions from X/Open Portability Guide, Issue 4, Version 2 24 System Interfaces and Headers, 4.16 <limits.h> 25 26 Please note only the values which are not greater than the minimum 27 stated in the standard document are listed. The `sysconf' functions 28 should be used to obtain the actual value. */ 29 30 #ifndef _XOPEN_LIM_H 31 #define _XOPEN_LIM_H 1 32 33 #define __need_IOV_MAX 34 #include <bits/stdio_lim.h> 35 36 /* We do not provide fixed values for 37 38 ARG_MAX Maximum length of argument to the `exec' function 39 including environment data. 40 41 ATEXIT_MAX Maximum number of functions that may be registered 42 with `atexit'. 43 44 CHILD_MAX Maximum number of simultaneous processes per real 45 user ID. 46 47 OPEN_MAX Maximum number of files that one process can have open 48 at anyone time. 49 50 PAGESIZE 51 PAGE_SIZE Size of bytes of a page. 52 53 PASS_MAX Maximum number of significant bytes in a password. 54 55 We only provide a fixed limit for 56 57 IOV_MAX Maximum number of `iovec' structures that one process has 58 available for use with `readv' or writev'. 59 60 if this is indeed fixed by the underlying system. 61 */ 62 63 64 /* Maximum number of `iovec' structures that one process has available 65 for use with `readv' or writev'. */ 66 #define _XOPEN_IOV_MAX _POSIX_UIO_MAXIOV 67 68 69 /* Maximum value of `digit' in calls to the `printf' and `scanf' 70 functions. We have no limit, so return a reasonable value. */ 71 #define NL_ARGMAX _POSIX_ARG_MAX 72 73 /* Maximum number of bytes in a `LANG' name. We have no limit. */ 74 #define NL_LANGMAX _POSIX2_LINE_MAX 75 76 /* Maximum message number. We have no limit. */ 77 #define NL_MSGMAX INT_MAX 78 79 /* Maximum number of bytes in N-to-1 collation mapping. We have no 80 limit. */ 81 #define NL_NMAX INT_MAX 82 83 /* Maximum set number. We have no limit. */ 84 #define NL_SETMAX INT_MAX 85 86 /* Maximum number of bytes in a message. We have no limit. */ 87 #define NL_TEXTMAX INT_MAX 88 89 /* Default process priority. */ 90 #define NZERO 20 91 92 93 /* Number of bits in a word of type `int'. */ 94 #ifdef INT_MAX 95 # if INT_MAX == 32767 96 # define WORD_BIT 16 97 # else 98 # if INT_MAX == 2147483647 99 # define WORD_BIT 32 100 # else 101 /* Safe assumption. */ 102 # define WORD_BIT 64 103 # endif 104 # endif 105 #elif defined __INT_MAX__ 106 # if __INT_MAX__ == 32767 107 # define WORD_BIT 16 108 # else 109 # if __INT_MAX__ == 2147483647 110 # define WORD_BIT 32 111 # else 112 /* Safe assumption. */ 113 # define WORD_BIT 64 114 # endif 115 # endif 116 #else 117 # define WORD_BIT 32 118 #endif 119 120 /* Number of bits in a word of type `long int'. */ 121 #ifdef LONG_MAX 122 # if LONG_MAX == 2147483647 123 # define LONG_BIT 32 124 # else 125 /* Safe assumption. */ 126 # define LONG_BIT 64 127 # endif 128 #elif defined __LONG_MAX__ 129 # if __LONG_MAX__ == 2147483647 130 # define LONG_BIT 32 131 # else 132 /* Safe assumption. */ 133 # define LONG_BIT 64 134 # endif 135 #else 136 # include <bits/wordsize.h> 137 # if __WORDSIZE == 64 138 # define LONG_BIT 64 139 # else 140 # define LONG_BIT 32 141 # endif 142 #endif 143 144 #endif /* bits/xopen_lim.h */ 145