Home | History | Annotate | Download | only in bits
      1 /* `sysconf', `pathconf', and `confstr' NAME values.  Generic version.
      2    Copyright (C) 1993,1995-1998,2000,2001,2003,2004,2007,2009
      3    Free Software Foundation, Inc.
      4    This file is part of the GNU C Library.
      5 
      6    The GNU C Library is free software; you can redistribute it and/or
      7    modify it under the terms of the GNU Lesser General Public
      8    License as published by the Free Software Foundation; either
      9    version 2.1 of the License, or (at your option) any later version.
     10 
     11    The GNU C Library is distributed in the hope that it will be useful,
     12    but WITHOUT ANY WARRANTY; without even the implied warranty of
     13    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
     14    Lesser General Public License for more details.
     15 
     16    You should have received a copy of the GNU Lesser General Public
     17    License along with the GNU C Library; if not, write to the Free
     18    Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
     19    02111-1307 USA.  */
     20 
     21 #ifndef _UNISTD_H
     22 # error "Never use <bits/confname.h> directly; include <unistd.h> instead."
     23 #endif
     24 
     25 /* Values for the NAME argument to `pathconf' and `fpathconf'.  */
     26 enum
     27   {
     28     _PC_LINK_MAX,
     29 #define	_PC_LINK_MAX			_PC_LINK_MAX
     30     _PC_MAX_CANON,
     31 #define	_PC_MAX_CANON			_PC_MAX_CANON
     32     _PC_MAX_INPUT,
     33 #define	_PC_MAX_INPUT			_PC_MAX_INPUT
     34     _PC_NAME_MAX,
     35 #define	_PC_NAME_MAX			_PC_NAME_MAX
     36     _PC_PATH_MAX,
     37 #define	_PC_PATH_MAX			_PC_PATH_MAX
     38     _PC_PIPE_BUF,
     39 #define	_PC_PIPE_BUF			_PC_PIPE_BUF
     40     _PC_CHOWN_RESTRICTED,
     41 #define	_PC_CHOWN_RESTRICTED		_PC_CHOWN_RESTRICTED
     42     _PC_NO_TRUNC,
     43 #define	_PC_NO_TRUNC			_PC_NO_TRUNC
     44     _PC_VDISABLE,
     45 #define _PC_VDISABLE			_PC_VDISABLE
     46     _PC_SYNC_IO,
     47 #define	_PC_SYNC_IO			_PC_SYNC_IO
     48     _PC_ASYNC_IO,
     49 #define	_PC_ASYNC_IO			_PC_ASYNC_IO
     50     _PC_PRIO_IO,
     51 #define	_PC_PRIO_IO			_PC_PRIO_IO
     52     _PC_SOCK_MAXBUF,
     53 #define	_PC_SOCK_MAXBUF			_PC_SOCK_MAXBUF
     54     _PC_FILESIZEBITS,
     55 #define _PC_FILESIZEBITS		_PC_FILESIZEBITS
     56     _PC_REC_INCR_XFER_SIZE,
     57 #define _PC_REC_INCR_XFER_SIZE		_PC_REC_INCR_XFER_SIZE
     58     _PC_REC_MAX_XFER_SIZE,
     59 #define _PC_REC_MAX_XFER_SIZE		_PC_REC_MAX_XFER_SIZE
     60     _PC_REC_MIN_XFER_SIZE,
     61 #define _PC_REC_MIN_XFER_SIZE		_PC_REC_MIN_XFER_SIZE
     62     _PC_REC_XFER_ALIGN,
     63 #define _PC_REC_XFER_ALIGN		_PC_REC_XFER_ALIGN
     64     _PC_ALLOC_SIZE_MIN,
     65 #define _PC_ALLOC_SIZE_MIN		_PC_ALLOC_SIZE_MIN
     66     _PC_SYMLINK_MAX,
     67 #define _PC_SYMLINK_MAX			_PC_SYMLINK_MAX
     68     _PC_2_SYMLINKS
     69 #define _PC_2_SYMLINKS			_PC_2_SYMLINKS
     70   };
     71 
     72 /* Values for the argument to `sysconf'.  */
     73 enum
     74   {
     75     _SC_ARG_MAX,
     76 #define	_SC_ARG_MAX			_SC_ARG_MAX
     77     _SC_CHILD_MAX,
     78 #define	_SC_CHILD_MAX			_SC_CHILD_MAX
     79     _SC_CLK_TCK,
     80 #define	_SC_CLK_TCK			_SC_CLK_TCK
     81     _SC_NGROUPS_MAX,
     82 #define	_SC_NGROUPS_MAX			_SC_NGROUPS_MAX
     83     _SC_OPEN_MAX,
     84 #define	_SC_OPEN_MAX			_SC_OPEN_MAX
     85     _SC_STREAM_MAX,
     86 #define	_SC_STREAM_MAX			_SC_STREAM_MAX
     87     _SC_TZNAME_MAX,
     88 #define	_SC_TZNAME_MAX			_SC_TZNAME_MAX
     89     _SC_JOB_CONTROL,
     90 #define	_SC_JOB_CONTROL			_SC_JOB_CONTROL
     91     _SC_SAVED_IDS,
     92 #define	_SC_SAVED_IDS			_SC_SAVED_IDS
     93     _SC_REALTIME_SIGNALS,
     94 #define	_SC_REALTIME_SIGNALS		_SC_REALTIME_SIGNALS
     95     _SC_PRIORITY_SCHEDULING,
     96 #define	_SC_PRIORITY_SCHEDULING		_SC_PRIORITY_SCHEDULING
     97     _SC_TIMERS,
     98 #define	_SC_TIMERS			_SC_TIMERS
     99     _SC_ASYNCHRONOUS_IO,
    100 #define	_SC_ASYNCHRONOUS_IO		_SC_ASYNCHRONOUS_IO
    101     _SC_PRIORITIZED_IO,
    102 #define	_SC_PRIORITIZED_IO		_SC_PRIORITIZED_IO
    103     _SC_SYNCHRONIZED_IO,
    104 #define	_SC_SYNCHRONIZED_IO		_SC_SYNCHRONIZED_IO
    105     _SC_FSYNC,
    106 #define	_SC_FSYNC			_SC_FSYNC
    107     _SC_MAPPED_FILES,
    108 #define	_SC_MAPPED_FILES		_SC_MAPPED_FILES
    109     _SC_MEMLOCK,
    110 #define	_SC_MEMLOCK			_SC_MEMLOCK
    111     _SC_MEMLOCK_RANGE,
    112 #define	_SC_MEMLOCK_RANGE		_SC_MEMLOCK_RANGE
    113     _SC_MEMORY_PROTECTION,
    114 #define	_SC_MEMORY_PROTECTION		_SC_MEMORY_PROTECTION
    115     _SC_MESSAGE_PASSING,
    116 #define	_SC_MESSAGE_PASSING		_SC_MESSAGE_PASSING
    117     _SC_SEMAPHORES,
    118 #define	_SC_SEMAPHORES			_SC_SEMAPHORES
    119     _SC_SHARED_MEMORY_OBJECTS,
    120 #define	_SC_SHARED_MEMORY_OBJECTS	_SC_SHARED_MEMORY_OBJECTS
    121     _SC_AIO_LISTIO_MAX,
    122 #define	_SC_AIO_LISTIO_MAX		_SC_AIO_LISTIO_MAX
    123     _SC_AIO_MAX,
    124 #define	_SC_AIO_MAX			_SC_AIO_MAX
    125     _SC_AIO_PRIO_DELTA_MAX,
    126 #define	_SC_AIO_PRIO_DELTA_MAX		_SC_AIO_PRIO_DELTA_MAX
    127     _SC_DELAYTIMER_MAX,
    128 #define	_SC_DELAYTIMER_MAX		_SC_DELAYTIMER_MAX
    129     _SC_MQ_OPEN_MAX,
    130 #define	_SC_MQ_OPEN_MAX			_SC_MQ_OPEN_MAX
    131     _SC_MQ_PRIO_MAX,
    132 #define	_SC_MQ_PRIO_MAX			_SC_MQ_PRIO_MAX
    133     _SC_VERSION,
    134 #define	_SC_VERSION			_SC_VERSION
    135     _SC_PAGESIZE,
    136 #define	_SC_PAGESIZE			_SC_PAGESIZE
    137 #define	_SC_PAGE_SIZE			_SC_PAGESIZE
    138     _SC_RTSIG_MAX,
    139 #define	_SC_RTSIG_MAX			_SC_RTSIG_MAX
    140     _SC_SEM_NSEMS_MAX,
    141 #define	_SC_SEM_NSEMS_MAX		_SC_SEM_NSEMS_MAX
    142     _SC_SEM_VALUE_MAX,
    143 #define	_SC_SEM_VALUE_MAX		_SC_SEM_VALUE_MAX
    144     _SC_SIGQUEUE_MAX,
    145 #define	_SC_SIGQUEUE_MAX		_SC_SIGQUEUE_MAX
    146     _SC_TIMER_MAX,
    147 #define	_SC_TIMER_MAX			_SC_TIMER_MAX
    148 
    149     /* Values for the argument to `sysconf'
    150        corresponding to _POSIX2_* symbols.  */
    151     _SC_BC_BASE_MAX,
    152 #define	_SC_BC_BASE_MAX			_SC_BC_BASE_MAX
    153     _SC_BC_DIM_MAX,
    154 #define	_SC_BC_DIM_MAX			_SC_BC_DIM_MAX
    155     _SC_BC_SCALE_MAX,
    156 #define	_SC_BC_SCALE_MAX		_SC_BC_SCALE_MAX
    157     _SC_BC_STRING_MAX,
    158 #define	_SC_BC_STRING_MAX		_SC_BC_STRING_MAX
    159     _SC_COLL_WEIGHTS_MAX,
    160 #define	_SC_COLL_WEIGHTS_MAX		_SC_COLL_WEIGHTS_MAX
    161     _SC_EQUIV_CLASS_MAX,
    162 #define	_SC_EQUIV_CLASS_MAX		_SC_EQUIV_CLASS_MAX
    163     _SC_EXPR_NEST_MAX,
    164 #define	_SC_EXPR_NEST_MAX		_SC_EXPR_NEST_MAX
    165     _SC_LINE_MAX,
    166 #define	_SC_LINE_MAX			_SC_LINE_MAX
    167     _SC_RE_DUP_MAX,
    168 #define	_SC_RE_DUP_MAX			_SC_RE_DUP_MAX
    169     _SC_CHARCLASS_NAME_MAX,
    170 #define	_SC_CHARCLASS_NAME_MAX		_SC_CHARCLASS_NAME_MAX
    171 
    172     _SC_2_VERSION,
    173 #define	_SC_2_VERSION			_SC_2_VERSION
    174     _SC_2_C_BIND,
    175 #define	_SC_2_C_BIND			_SC_2_C_BIND
    176     _SC_2_C_DEV,
    177 #define	_SC_2_C_DEV			_SC_2_C_DEV
    178     _SC_2_FORT_DEV,
    179 #define	_SC_2_FORT_DEV			_SC_2_FORT_DEV
    180     _SC_2_FORT_RUN,
    181 #define	_SC_2_FORT_RUN			_SC_2_FORT_RUN
    182     _SC_2_SW_DEV,
    183 #define	_SC_2_SW_DEV			_SC_2_SW_DEV
    184     _SC_2_LOCALEDEF,
    185 #define	_SC_2_LOCALEDEF			_SC_2_LOCALEDEF
    186 
    187     _SC_PII,
    188 #define	_SC_PII				_SC_PII
    189     _SC_PII_XTI,
    190 #define	_SC_PII_XTI			_SC_PII_XTI
    191     _SC_PII_SOCKET,
    192 #define	_SC_PII_SOCKET			_SC_PII_SOCKET
    193     _SC_PII_INTERNET,
    194 #define	_SC_PII_INTERNET		_SC_PII_INTERNET
    195     _SC_PII_OSI,
    196 #define	_SC_PII_OSI			_SC_PII_OSI
    197     _SC_POLL,
    198 #define	_SC_POLL			_SC_POLL
    199     _SC_SELECT,
    200 #define	_SC_SELECT			_SC_SELECT
    201     _SC_UIO_MAXIOV,
    202 #define	_SC_UIO_MAXIOV			_SC_UIO_MAXIOV
    203     _SC_IOV_MAX = _SC_UIO_MAXIOV,
    204 #define _SC_IOV_MAX			_SC_IOV_MAX
    205     _SC_PII_INTERNET_STREAM,
    206 #define	_SC_PII_INTERNET_STREAM		_SC_PII_INTERNET_STREAM
    207     _SC_PII_INTERNET_DGRAM,
    208 #define	_SC_PII_INTERNET_DGRAM		_SC_PII_INTERNET_DGRAM
    209     _SC_PII_OSI_COTS,
    210 #define	_SC_PII_OSI_COTS		_SC_PII_OSI_COTS
    211     _SC_PII_OSI_CLTS,
    212 #define	_SC_PII_OSI_CLTS		_SC_PII_OSI_CLTS
    213     _SC_PII_OSI_M,
    214 #define	_SC_PII_OSI_M			_SC_PII_OSI_M
    215     _SC_T_IOV_MAX,
    216 #define	_SC_T_IOV_MAX			_SC_T_IOV_MAX
    217 
    218     /* Values according to POSIX 1003.1c (POSIX threads).  */
    219     _SC_THREADS,
    220 #define	_SC_THREADS			_SC_THREADS
    221     _SC_THREAD_SAFE_FUNCTIONS,
    222 #define _SC_THREAD_SAFE_FUNCTIONS	_SC_THREAD_SAFE_FUNCTIONS
    223     _SC_GETGR_R_SIZE_MAX,
    224 #define	_SC_GETGR_R_SIZE_MAX		_SC_GETGR_R_SIZE_MAX
    225     _SC_GETPW_R_SIZE_MAX,
    226 #define	_SC_GETPW_R_SIZE_MAX		_SC_GETPW_R_SIZE_MAX
    227     _SC_LOGIN_NAME_MAX,
    228 #define	_SC_LOGIN_NAME_MAX		_SC_LOGIN_NAME_MAX
    229     _SC_TTY_NAME_MAX,
    230 #define	_SC_TTY_NAME_MAX		_SC_TTY_NAME_MAX
    231     _SC_THREAD_DESTRUCTOR_ITERATIONS,
    232 #define	_SC_THREAD_DESTRUCTOR_ITERATIONS _SC_THREAD_DESTRUCTOR_ITERATIONS
    233     _SC_THREAD_KEYS_MAX,
    234 #define	_SC_THREAD_KEYS_MAX		_SC_THREAD_KEYS_MAX
    235     _SC_THREAD_STACK_MIN,
    236 #define	_SC_THREAD_STACK_MIN		_SC_THREAD_STACK_MIN
    237     _SC_THREAD_THREADS_MAX,
    238 #define	_SC_THREAD_THREADS_MAX		_SC_THREAD_THREADS_MAX
    239     _SC_THREAD_ATTR_STACKADDR,
    240 #define	_SC_THREAD_ATTR_STACKADDR	_SC_THREAD_ATTR_STACKADDR
    241     _SC_THREAD_ATTR_STACKSIZE,
    242 #define	_SC_THREAD_ATTR_STACKSIZE	_SC_THREAD_ATTR_STACKSIZE
    243     _SC_THREAD_PRIORITY_SCHEDULING,
    244 #define	_SC_THREAD_PRIORITY_SCHEDULING	_SC_THREAD_PRIORITY_SCHEDULING
    245     _SC_THREAD_PRIO_INHERIT,
    246 #define	_SC_THREAD_PRIO_INHERIT		_SC_THREAD_PRIO_INHERIT
    247     _SC_THREAD_PRIO_PROTECT,
    248 #define	_SC_THREAD_PRIO_PROTECT		_SC_THREAD_PRIO_PROTECT
    249     _SC_THREAD_PROCESS_SHARED,
    250 #define	_SC_THREAD_PROCESS_SHARED	_SC_THREAD_PROCESS_SHARED
    251 
    252     _SC_NPROCESSORS_CONF,
    253 #define _SC_NPROCESSORS_CONF		_SC_NPROCESSORS_CONF
    254     _SC_NPROCESSORS_ONLN,
    255 #define _SC_NPROCESSORS_ONLN		_SC_NPROCESSORS_ONLN
    256     _SC_PHYS_PAGES,
    257 #define _SC_PHYS_PAGES			_SC_PHYS_PAGES
    258     _SC_AVPHYS_PAGES,
    259 #define _SC_AVPHYS_PAGES		_SC_AVPHYS_PAGES
    260     _SC_ATEXIT_MAX,
    261 #define _SC_ATEXIT_MAX			_SC_ATEXIT_MAX
    262     _SC_PASS_MAX,
    263 #define _SC_PASS_MAX			_SC_PASS_MAX
    264 
    265     _SC_XOPEN_VERSION,
    266 #define _SC_XOPEN_VERSION		_SC_XOPEN_VERSION
    267     _SC_XOPEN_XCU_VERSION,
    268 #define _SC_XOPEN_XCU_VERSION		_SC_XOPEN_XCU_VERSION
    269     _SC_XOPEN_UNIX,
    270 #define _SC_XOPEN_UNIX			_SC_XOPEN_UNIX
    271     _SC_XOPEN_CRYPT,
    272 #define _SC_XOPEN_CRYPT			_SC_XOPEN_CRYPT
    273     _SC_XOPEN_ENH_I18N,
    274 #define _SC_XOPEN_ENH_I18N		_SC_XOPEN_ENH_I18N
    275     _SC_XOPEN_SHM,
    276 #define _SC_XOPEN_SHM			_SC_XOPEN_SHM
    277 
    278     _SC_2_CHAR_TERM,
    279 #define _SC_2_CHAR_TERM			_SC_2_CHAR_TERM
    280     _SC_2_C_VERSION,
    281 #define _SC_2_C_VERSION			_SC_2_C_VERSION
    282     _SC_2_UPE,
    283 #define _SC_2_UPE			_SC_2_UPE
    284 
    285     _SC_XOPEN_XPG2,
    286 #define _SC_XOPEN_XPG2			_SC_XOPEN_XPG2
    287     _SC_XOPEN_XPG3,
    288 #define _SC_XOPEN_XPG3			_SC_XOPEN_XPG3
    289     _SC_XOPEN_XPG4,
    290 #define _SC_XOPEN_XPG4			_SC_XOPEN_XPG4
    291 
    292     _SC_CHAR_BIT,
    293 #define	_SC_CHAR_BIT			_SC_CHAR_BIT
    294     _SC_CHAR_MAX,
    295 #define	_SC_CHAR_MAX			_SC_CHAR_MAX
    296     _SC_CHAR_MIN,
    297 #define	_SC_CHAR_MIN			_SC_CHAR_MIN
    298     _SC_INT_MAX,
    299 #define	_SC_INT_MAX			_SC_INT_MAX
    300     _SC_INT_MIN,
    301 #define	_SC_INT_MIN			_SC_INT_MIN
    302     _SC_LONG_BIT,
    303 #define	_SC_LONG_BIT			_SC_LONG_BIT
    304     _SC_WORD_BIT,
    305 #define	_SC_WORD_BIT			_SC_WORD_BIT
    306     _SC_MB_LEN_MAX,
    307 #define	_SC_MB_LEN_MAX			_SC_MB_LEN_MAX
    308     _SC_NZERO,
    309 #define	_SC_NZERO			_SC_NZERO
    310     _SC_SSIZE_MAX,
    311 #define	_SC_SSIZE_MAX			_SC_SSIZE_MAX
    312     _SC_SCHAR_MAX,
    313 #define	_SC_SCHAR_MAX			_SC_SCHAR_MAX
    314     _SC_SCHAR_MIN,
    315 #define	_SC_SCHAR_MIN			_SC_SCHAR_MIN
    316     _SC_SHRT_MAX,
    317 #define	_SC_SHRT_MAX			_SC_SHRT_MAX
    318     _SC_SHRT_MIN,
    319 #define	_SC_SHRT_MIN			_SC_SHRT_MIN
    320     _SC_UCHAR_MAX,
    321 #define	_SC_UCHAR_MAX			_SC_UCHAR_MAX
    322     _SC_UINT_MAX,
    323 #define	_SC_UINT_MAX			_SC_UINT_MAX
    324     _SC_ULONG_MAX,
    325 #define	_SC_ULONG_MAX			_SC_ULONG_MAX
    326     _SC_USHRT_MAX,
    327 #define	_SC_USHRT_MAX			_SC_USHRT_MAX
    328 
    329     _SC_NL_ARGMAX,
    330 #define	_SC_NL_ARGMAX			_SC_NL_ARGMAX
    331     _SC_NL_LANGMAX,
    332 #define	_SC_NL_LANGMAX			_SC_NL_LANGMAX
    333     _SC_NL_MSGMAX,
    334 #define	_SC_NL_MSGMAX			_SC_NL_MSGMAX
    335     _SC_NL_NMAX,
    336 #define	_SC_NL_NMAX			_SC_NL_NMAX
    337     _SC_NL_SETMAX,
    338 #define	_SC_NL_SETMAX			_SC_NL_SETMAX
    339     _SC_NL_TEXTMAX,
    340 #define	_SC_NL_TEXTMAX			_SC_NL_TEXTMAX
    341 
    342     _SC_XBS5_ILP32_OFF32,
    343 #define _SC_XBS5_ILP32_OFF32		_SC_XBS5_ILP32_OFF32
    344     _SC_XBS5_ILP32_OFFBIG,
    345 #define _SC_XBS5_ILP32_OFFBIG		_SC_XBS5_ILP32_OFFBIG
    346     _SC_XBS5_LP64_OFF64,
    347 #define _SC_XBS5_LP64_OFF64		_SC_XBS5_LP64_OFF64
    348     _SC_XBS5_LPBIG_OFFBIG,
    349 #define _SC_XBS5_LPBIG_OFFBIG		_SC_XBS5_LPBIG_OFFBIG
    350 
    351     _SC_XOPEN_LEGACY,
    352 #define _SC_XOPEN_LEGACY		_SC_XOPEN_LEGACY
    353     _SC_XOPEN_REALTIME,
    354 #define _SC_XOPEN_REALTIME		_SC_XOPEN_REALTIME
    355     _SC_XOPEN_REALTIME_THREADS,
    356 #define _SC_XOPEN_REALTIME_THREADS	_SC_XOPEN_REALTIME_THREADS
    357 
    358     _SC_ADVISORY_INFO,
    359 #define _SC_ADVISORY_INFO		_SC_ADVISORY_INFO
    360     _SC_BARRIERS,
    361 #define _SC_BARRIERS			_SC_BARRIERS
    362     _SC_BASE,
    363 #define _SC_BASE			_SC_BASE
    364     _SC_C_LANG_SUPPORT,
    365 #define _SC_C_LANG_SUPPORT		_SC_C_LANG_SUPPORT
    366     _SC_C_LANG_SUPPORT_R,
    367 #define _SC_C_LANG_SUPPORT_R		_SC_C_LANG_SUPPORT_R
    368     _SC_CLOCK_SELECTION,
    369 #define _SC_CLOCK_SELECTION		_SC_CLOCK_SELECTION
    370     _SC_CPUTIME,
    371 #define _SC_CPUTIME			_SC_CPUTIME
    372     _SC_THREAD_CPUTIME,
    373 #define _SC_THREAD_CPUTIME		_SC_THREAD_CPUTIME
    374     _SC_DEVICE_IO,
    375 #define _SC_DEVICE_IO			_SC_DEVICE_IO
    376     _SC_DEVICE_SPECIFIC,
    377 #define _SC_DEVICE_SPECIFIC		_SC_DEVICE_SPECIFIC
    378     _SC_DEVICE_SPECIFIC_R,
    379 #define _SC_DEVICE_SPECIFIC_R		_SC_DEVICE_SPECIFIC_R
    380     _SC_FD_MGMT,
    381 #define _SC_FD_MGMT			_SC_FD_MGMT
    382     _SC_FIFO,
    383 #define _SC_FIFO			_SC_FIFO
    384     _SC_PIPE,
    385 #define _SC_PIPE			_SC_PIPE
    386     _SC_FILE_ATTRIBUTES,
    387 #define _SC_FILE_ATTRIBUTES		_SC_FILE_ATTRIBUTES
    388     _SC_FILE_LOCKING,
    389 #define _SC_FILE_LOCKING		_SC_FILE_LOCKING
    390     _SC_FILE_SYSTEM,
    391 #define _SC_FILE_SYSTEM			_SC_FILE_SYSTEM
    392     _SC_MONOTONIC_CLOCK,
    393 #define _SC_MONOTONIC_CLOCK		_SC_MONOTONIC_CLOCK
    394     _SC_MULTI_PROCESS,
    395 #define _SC_MULTI_PROCESS		_SC_MULTI_PROCESS
    396     _SC_SINGLE_PROCESS,
    397 #define _SC_SINGLE_PROCESS		_SC_SINGLE_PROCESS
    398     _SC_NETWORKING,
    399 #define _SC_NETWORKING			_SC_NETWORKING
    400     _SC_READER_WRITER_LOCKS,
    401 #define _SC_READER_WRITER_LOCKS		_SC_READER_WRITER_LOCKS
    402     _SC_SPIN_LOCKS,
    403 #define _SC_SPIN_LOCKS			_SC_SPIN_LOCKS
    404     _SC_REGEXP,
    405 #define _SC_REGEXP			_SC_REGEXP
    406     _SC_REGEX_VERSION,
    407 #define _SC_REGEX_VERSION		_SC_REGEX_VERSION
    408     _SC_SHELL,
    409 #define _SC_SHELL			_SC_SHELL
    410     _SC_SIGNALS,
    411 #define _SC_SIGNALS			_SC_SIGNALS
    412     _SC_SPAWN,
    413 #define _SC_SPAWN			_SC_SPAWN
    414     _SC_SPORADIC_SERVER,
    415 #define _SC_SPORADIC_SERVER		_SC_SPORADIC_SERVER
    416     _SC_THREAD_SPORADIC_SERVER,
    417 #define _SC_THREAD_SPORADIC_SERVER	_SC_THREAD_SPORADIC_SERVER
    418     _SC_SYSTEM_DATABASE,
    419 #define _SC_SYSTEM_DATABASE		_SC_SYSTEM_DATABASE
    420     _SC_SYSTEM_DATABASE_R,
    421 #define _SC_SYSTEM_DATABASE_R		_SC_SYSTEM_DATABASE_R
    422     _SC_TIMEOUTS,
    423 #define _SC_TIMEOUTS			_SC_TIMEOUTS
    424     _SC_TYPED_MEMORY_OBJECTS,
    425 #define _SC_TYPED_MEMORY_OBJECTS	_SC_TYPED_MEMORY_OBJECTS
    426     _SC_USER_GROUPS,
    427 #define _SC_USER_GROUPS			_SC_USER_GROUPS
    428     _SC_USER_GROUPS_R,
    429 #define _SC_USER_GROUPS_R		_SC_USER_GROUPS_R
    430     _SC_2_PBS,
    431 #define _SC_2_PBS			_SC_2_PBS
    432     _SC_2_PBS_ACCOUNTING,
    433 #define _SC_2_PBS_ACCOUNTING		_SC_2_PBS_ACCOUNTING
    434     _SC_2_PBS_LOCATE,
    435 #define _SC_2_PBS_LOCATE		_SC_2_PBS_LOCATE
    436     _SC_2_PBS_MESSAGE,
    437 #define _SC_2_PBS_MESSAGE		_SC_2_PBS_MESSAGE
    438     _SC_2_PBS_TRACK,
    439 #define _SC_2_PBS_TRACK			_SC_2_PBS_TRACK
    440     _SC_SYMLOOP_MAX,
    441 #define _SC_SYMLOOP_MAX			_SC_SYMLOOP_MAX
    442     _SC_STREAMS,
    443 #define _SC_STREAMS			_SC_STREAMS
    444     _SC_2_PBS_CHECKPOINT,
    445 #define _SC_2_PBS_CHECKPOINT		_SC_2_PBS_CHECKPOINT
    446 
    447     _SC_V6_ILP32_OFF32,
    448 #define _SC_V6_ILP32_OFF32		_SC_V6_ILP32_OFF32
    449     _SC_V6_ILP32_OFFBIG,
    450 #define _SC_V6_ILP32_OFFBIG		_SC_V6_ILP32_OFFBIG
    451     _SC_V6_LP64_OFF64,
    452 #define _SC_V6_LP64_OFF64		_SC_V6_LP64_OFF64
    453     _SC_V6_LPBIG_OFFBIG,
    454 #define _SC_V6_LPBIG_OFFBIG		_SC_V6_LPBIG_OFFBIG
    455 
    456     _SC_HOST_NAME_MAX,
    457 #define _SC_HOST_NAME_MAX		_SC_HOST_NAME_MAX
    458     _SC_TRACE,
    459 #define _SC_TRACE			_SC_TRACE
    460     _SC_TRACE_EVENT_FILTER,
    461 #define _SC_TRACE_EVENT_FILTER		_SC_TRACE_EVENT_FILTER
    462     _SC_TRACE_INHERIT,
    463 #define _SC_TRACE_INHERIT		_SC_TRACE_INHERIT
    464     _SC_TRACE_LOG,
    465 #define _SC_TRACE_LOG			_SC_TRACE_LOG
    466 
    467     _SC_LEVEL1_ICACHE_SIZE,
    468 #define _SC_LEVEL1_ICACHE_SIZE		_SC_LEVEL1_ICACHE_SIZE
    469     _SC_LEVEL1_ICACHE_ASSOC,
    470 #define _SC_LEVEL1_ICACHE_ASSOC		_SC_LEVEL1_ICACHE_ASSOC
    471     _SC_LEVEL1_ICACHE_LINESIZE,
    472 #define _SC_LEVEL1_ICACHE_LINESIZE	_SC_LEVEL1_ICACHE_LINESIZE
    473     _SC_LEVEL1_DCACHE_SIZE,
    474 #define _SC_LEVEL1_DCACHE_SIZE		_SC_LEVEL1_DCACHE_SIZE
    475     _SC_LEVEL1_DCACHE_ASSOC,
    476 #define _SC_LEVEL1_DCACHE_ASSOC		_SC_LEVEL1_DCACHE_ASSOC
    477     _SC_LEVEL1_DCACHE_LINESIZE,
    478 #define _SC_LEVEL1_DCACHE_LINESIZE	_SC_LEVEL1_DCACHE_LINESIZE
    479     _SC_LEVEL2_CACHE_SIZE,
    480 #define _SC_LEVEL2_CACHE_SIZE		_SC_LEVEL2_CACHE_SIZE
    481     _SC_LEVEL2_CACHE_ASSOC,
    482 #define _SC_LEVEL2_CACHE_ASSOC		_SC_LEVEL2_CACHE_ASSOC
    483     _SC_LEVEL2_CACHE_LINESIZE,
    484 #define _SC_LEVEL2_CACHE_LINESIZE	_SC_LEVEL2_CACHE_LINESIZE
    485     _SC_LEVEL3_CACHE_SIZE,
    486 #define _SC_LEVEL3_CACHE_SIZE		_SC_LEVEL3_CACHE_SIZE
    487     _SC_LEVEL3_CACHE_ASSOC,
    488 #define _SC_LEVEL3_CACHE_ASSOC		_SC_LEVEL3_CACHE_ASSOC
    489     _SC_LEVEL3_CACHE_LINESIZE,
    490 #define _SC_LEVEL3_CACHE_LINESIZE	_SC_LEVEL3_CACHE_LINESIZE
    491     _SC_LEVEL4_CACHE_SIZE,
    492 #define _SC_LEVEL4_CACHE_SIZE		_SC_LEVEL4_CACHE_SIZE
    493     _SC_LEVEL4_CACHE_ASSOC,
    494 #define _SC_LEVEL4_CACHE_ASSOC		_SC_LEVEL4_CACHE_ASSOC
    495     _SC_LEVEL4_CACHE_LINESIZE,
    496 #define _SC_LEVEL4_CACHE_LINESIZE	_SC_LEVEL4_CACHE_LINESIZE
    497     /* Leave room here, maybe we need a few more cache levels some day.  */
    498 
    499     _SC_IPV6 = _SC_LEVEL1_ICACHE_SIZE + 50,
    500 #define _SC_IPV6			_SC_IPV6
    501     _SC_RAW_SOCKETS,
    502 #define _SC_RAW_SOCKETS			_SC_RAW_SOCKETS
    503 
    504     _SC_V7_ILP32_OFF32,
    505 #define _SC_V7_ILP32_OFF32		_SC_V7_ILP32_OFF32
    506     _SC_V7_ILP32_OFFBIG,
    507 #define _SC_V7_ILP32_OFFBIG		_SC_V7_ILP32_OFFBIG
    508     _SC_V7_LP64_OFF64,
    509 #define _SC_V7_LP64_OFF64		_SC_V7_LP64_OFF64
    510     _SC_V7_LPBIG_OFFBIG,
    511 #define _SC_V7_LPBIG_OFFBIG		_SC_V7_LPBIG_OFFBIG
    512 
    513     _SC_SS_REPL_MAX,
    514 #define _SC_SS_REPL_MAX			_SC_SS_REPL_MAX
    515 
    516     _SC_TRACE_EVENT_NAME_MAX,
    517 #define _SC_TRACE_EVENT_NAME_MAX	_SC_TRACE_EVENT_NAME_MAX
    518     _SC_TRACE_NAME_MAX,
    519 #define _SC_TRACE_NAME_MAX		_SC_TRACE_NAME_MAX
    520     _SC_TRACE_SYS_MAX,
    521 #define _SC_TRACE_SYS_MAX		_SC_TRACE_SYS_MAX
    522     _SC_TRACE_USER_EVENT_MAX,
    523 #define _SC_TRACE_USER_EVENT_MAX	_SC_TRACE_USER_EVENT_MAX
    524 
    525     _SC_XOPEN_STREAMS,
    526 #define _SC_XOPEN_STREAMS		_SC_XOPEN_STREAMS
    527 
    528     _SC_THREAD_ROBUST_PRIO_INHERIT,
    529 #define _SC_THREAD_ROBUST_PRIO_INHERIT	_SC_THREAD_ROBUST_PRIO_INHERIT
    530     _SC_THREAD_ROBUST_PRIO_PROTECT
    531 #define _SC_THREAD_ROBUST_PRIO_PROTECT	_SC_THREAD_ROBUST_PRIO_PROTECT
    532   };
    533 
    534 /* Values for the NAME argument to `confstr'.  */
    535 enum
    536   {
    537     _CS_PATH,			/* The default search path.  */
    538 #define _CS_PATH		_CS_PATH
    539 
    540     _CS_V6_WIDTH_RESTRICTED_ENVS,
    541 #define _CS_V6_WIDTH_RESTRICTED_ENVS	_CS_V6_WIDTH_RESTRICTED_ENVS
    542 #define _CS_POSIX_V6_WIDTH_RESTRICTED_ENVS	_CS_V6_WIDTH_RESTRICTED_ENVS
    543 
    544     _CS_GNU_LIBC_VERSION,
    545 #define _CS_GNU_LIBC_VERSION	_CS_GNU_LIBC_VERSION
    546     _CS_GNU_LIBPTHREAD_VERSION,
    547 #define _CS_GNU_LIBPTHREAD_VERSION	_CS_GNU_LIBPTHREAD_VERSION
    548 
    549     _CS_V5_WIDTH_RESTRICTED_ENVS,
    550 #define _CS_V5_WIDTH_RESTRICTED_ENVS	_CS_V5_WIDTH_RESTRICTED_ENVS
    551 #define _CS_POSIX_V5_WIDTH_RESTRICTED_ENVS	_CS_V5_WIDTH_RESTRICTED_ENVS
    552 
    553     _CS_V7_WIDTH_RESTRICTED_ENVS,
    554 #define _CS_V7_WIDTH_RESTRICTED_ENVS	_CS_V7_WIDTH_RESTRICTED_ENVS
    555 #define _CS_POSIX_V7_WIDTH_RESTRICTED_ENVS	_CS_V7_WIDTH_RESTRICTED_ENVS
    556 
    557     _CS_LFS_CFLAGS = 1000,
    558 #define _CS_LFS_CFLAGS	_CS_LFS_CFLAGS
    559     _CS_LFS_LDFLAGS,
    560 #define _CS_LFS_LDFLAGS	_CS_LFS_LDFLAGS
    561     _CS_LFS_LIBS,
    562 #define _CS_LFS_LIBS		_CS_LFS_LIBS
    563     _CS_LFS_LINTFLAGS,
    564 #define _CS_LFS_LINTFLAGS	_CS_LFS_LINTFLAGS
    565     _CS_LFS64_CFLAGS,
    566 #define _CS_LFS64_CFLAGS	_CS_LFS64_CFLAGS
    567     _CS_LFS64_LDFLAGS,
    568 #define _CS_LFS64_LDFLAGS	_CS_LFS64_LDFLAGS
    569     _CS_LFS64_LIBS,
    570 #define _CS_LFS64_LIBS	_CS_LFS64_LIBS
    571     _CS_LFS64_LINTFLAGS,
    572 #define _CS_LFS64_LINTFLAGS	_CS_LFS64_LINTFLAGS
    573 
    574     _CS_XBS5_ILP32_OFF32_CFLAGS = 1100,
    575 #define _CS_XBS5_ILP32_OFF32_CFLAGS _CS_XBS5_ILP32_OFF32_CFLAGS
    576     _CS_XBS5_ILP32_OFF32_LDFLAGS,
    577 #define _CS_XBS5_ILP32_OFF32_LDFLAGS _CS_XBS5_ILP32_OFF32_LDFLAGS
    578     _CS_XBS5_ILP32_OFF32_LIBS,
    579 #define _CS_XBS5_ILP32_OFF32_LIBS _CS_XBS5_ILP32_OFF32_LIBS
    580     _CS_XBS5_ILP32_OFF32_LINTFLAGS,
    581 #define _CS_XBS5_ILP32_OFF32_LINTFLAGS _CS_XBS5_ILP32_OFF32_LINTFLAGS
    582     _CS_XBS5_ILP32_OFFBIG_CFLAGS,
    583 #define _CS_XBS5_ILP32_OFFBIG_CFLAGS _CS_XBS5_ILP32_OFFBIG_CFLAGS
    584     _CS_XBS5_ILP32_OFFBIG_LDFLAGS,
    585 #define _CS_XBS5_ILP32_OFFBIG_LDFLAGS _CS_XBS5_ILP32_OFFBIG_LDFLAGS
    586     _CS_XBS5_ILP32_OFFBIG_LIBS,
    587 #define _CS_XBS5_ILP32_OFFBIG_LIBS _CS_XBS5_ILP32_OFFBIG_LIBS
    588     _CS_XBS5_ILP32_OFFBIG_LINTFLAGS,
    589 #define _CS_XBS5_ILP32_OFFBIG_LINTFLAGS _CS_XBS5_ILP32_OFFBIG_LINTFLAGS
    590     _CS_XBS5_LP64_OFF64_CFLAGS,
    591 #define _CS_XBS5_LP64_OFF64_CFLAGS _CS_XBS5_LP64_OFF64_CFLAGS
    592     _CS_XBS5_LP64_OFF64_LDFLAGS,
    593 #define _CS_XBS5_LP64_OFF64_LDFLAGS _CS_XBS5_LP64_OFF64_LDFLAGS
    594     _CS_XBS5_LP64_OFF64_LIBS,
    595 #define _CS_XBS5_LP64_OFF64_LIBS _CS_XBS5_LP64_OFF64_LIBS
    596     _CS_XBS5_LP64_OFF64_LINTFLAGS,
    597 #define _CS_XBS5_LP64_OFF64_LINTFLAGS _CS_XBS5_LP64_OFF64_LINTFLAGS
    598     _CS_XBS5_LPBIG_OFFBIG_CFLAGS,
    599 #define _CS_XBS5_LPBIG_OFFBIG_CFLAGS _CS_XBS5_LPBIG_OFFBIG_CFLAGS
    600     _CS_XBS5_LPBIG_OFFBIG_LDFLAGS,
    601 #define _CS_XBS5_LPBIG_OFFBIG_LDFLAGS _CS_XBS5_LPBIG_OFFBIG_LDFLAGS
    602     _CS_XBS5_LPBIG_OFFBIG_LIBS,
    603 #define _CS_XBS5_LPBIG_OFFBIG_LIBS _CS_XBS5_LPBIG_OFFBIG_LIBS
    604     _CS_XBS5_LPBIG_OFFBIG_LINTFLAGS,
    605 #define _CS_XBS5_LPBIG_OFFBIG_LINTFLAGS _CS_XBS5_LPBIG_OFFBIG_LINTFLAGS
    606 
    607     _CS_POSIX_V6_ILP32_OFF32_CFLAGS,
    608 #define _CS_POSIX_V6_ILP32_OFF32_CFLAGS _CS_POSIX_V6_ILP32_OFF32_CFLAGS
    609     _CS_POSIX_V6_ILP32_OFF32_LDFLAGS,
    610 #define _CS_POSIX_V6_ILP32_OFF32_LDFLAGS _CS_POSIX_V6_ILP32_OFF32_LDFLAGS
    611     _CS_POSIX_V6_ILP32_OFF32_LIBS,
    612 #define _CS_POSIX_V6_ILP32_OFF32_LIBS _CS_POSIX_V6_ILP32_OFF32_LIBS
    613     _CS_POSIX_V6_ILP32_OFF32_LINTFLAGS,
    614 #define _CS_POSIX_V6_ILP32_OFF32_LINTFLAGS _CS_POSIX_V6_ILP32_OFF32_LINTFLAGS
    615     _CS_POSIX_V6_ILP32_OFFBIG_CFLAGS,
    616 #define _CS_POSIX_V6_ILP32_OFFBIG_CFLAGS _CS_POSIX_V6_ILP32_OFFBIG_CFLAGS
    617     _CS_POSIX_V6_ILP32_OFFBIG_LDFLAGS,
    618 #define _CS_POSIX_V6_ILP32_OFFBIG_LDFLAGS _CS_POSIX_V6_ILP32_OFFBIG_LDFLAGS
    619     _CS_POSIX_V6_ILP32_OFFBIG_LIBS,
    620 #define _CS_POSIX_V6_ILP32_OFFBIG_LIBS _CS_POSIX_V6_ILP32_OFFBIG_LIBS
    621     _CS_POSIX_V6_ILP32_OFFBIG_LINTFLAGS,
    622 #define _CS_POSIX_V6_ILP32_OFFBIG_LINTFLAGS _CS_POSIX_V6_ILP32_OFFBIG_LINTFLAGS
    623     _CS_POSIX_V6_LP64_OFF64_CFLAGS,
    624 #define _CS_POSIX_V6_LP64_OFF64_CFLAGS _CS_POSIX_V6_LP64_OFF64_CFLAGS
    625     _CS_POSIX_V6_LP64_OFF64_LDFLAGS,
    626 #define _CS_POSIX_V6_LP64_OFF64_LDFLAGS _CS_POSIX_V6_LP64_OFF64_LDFLAGS
    627     _CS_POSIX_V6_LP64_OFF64_LIBS,
    628 #define _CS_POSIX_V6_LP64_OFF64_LIBS _CS_POSIX_V6_LP64_OFF64_LIBS
    629     _CS_POSIX_V6_LP64_OFF64_LINTFLAGS,
    630 #define _CS_POSIX_V6_LP64_OFF64_LINTFLAGS _CS_POSIX_V6_LP64_OFF64_LINTFLAGS
    631     _CS_POSIX_V6_LPBIG_OFFBIG_CFLAGS,
    632 #define _CS_POSIX_V6_LPBIG_OFFBIG_CFLAGS _CS_POSIX_V6_LPBIG_OFFBIG_CFLAGS
    633     _CS_POSIX_V6_LPBIG_OFFBIG_LDFLAGS,
    634 #define _CS_POSIX_V6_LPBIG_OFFBIG_LDFLAGS _CS_POSIX_V6_LPBIG_OFFBIG_LDFLAGS
    635     _CS_POSIX_V6_LPBIG_OFFBIG_LIBS,
    636 #define _CS_POSIX_V6_LPBIG_OFFBIG_LIBS _CS_POSIX_V6_LPBIG_OFFBIG_LIBS
    637     _CS_POSIX_V6_LPBIG_OFFBIG_LINTFLAGS,
    638 #define _CS_POSIX_V6_LPBIG_OFFBIG_LINTFLAGS _CS_POSIX_V6_LPBIG_OFFBIG_LINTFLAGS
    639 
    640     _CS_POSIX_V7_ILP32_OFF32_CFLAGS,
    641 #define _CS_POSIX_V7_ILP32_OFF32_CFLAGS _CS_POSIX_V7_ILP32_OFF32_CFLAGS
    642     _CS_POSIX_V7_ILP32_OFF32_LDFLAGS,
    643 #define _CS_POSIX_V7_ILP32_OFF32_LDFLAGS _CS_POSIX_V7_ILP32_OFF32_LDFLAGS
    644     _CS_POSIX_V7_ILP32_OFF32_LIBS,
    645 #define _CS_POSIX_V7_ILP32_OFF32_LIBS _CS_POSIX_V7_ILP32_OFF32_LIBS
    646     _CS_POSIX_V7_ILP32_OFF32_LINTFLAGS,
    647 #define _CS_POSIX_V7_ILP32_OFF32_LINTFLAGS _CS_POSIX_V7_ILP32_OFF32_LINTFLAGS
    648     _CS_POSIX_V7_ILP32_OFFBIG_CFLAGS,
    649 #define _CS_POSIX_V7_ILP32_OFFBIG_CFLAGS _CS_POSIX_V7_ILP32_OFFBIG_CFLAGS
    650     _CS_POSIX_V7_ILP32_OFFBIG_LDFLAGS,
    651 #define _CS_POSIX_V7_ILP32_OFFBIG_LDFLAGS _CS_POSIX_V7_ILP32_OFFBIG_LDFLAGS
    652     _CS_POSIX_V7_ILP32_OFFBIG_LIBS,
    653 #define _CS_POSIX_V7_ILP32_OFFBIG_LIBS _CS_POSIX_V7_ILP32_OFFBIG_LIBS
    654     _CS_POSIX_V7_ILP32_OFFBIG_LINTFLAGS,
    655 #define _CS_POSIX_V7_ILP32_OFFBIG_LINTFLAGS _CS_POSIX_V7_ILP32_OFFBIG_LINTFLAGS
    656     _CS_POSIX_V7_LP64_OFF64_CFLAGS,
    657 #define _CS_POSIX_V7_LP64_OFF64_CFLAGS _CS_POSIX_V7_LP64_OFF64_CFLAGS
    658     _CS_POSIX_V7_LP64_OFF64_LDFLAGS,
    659 #define _CS_POSIX_V7_LP64_OFF64_LDFLAGS _CS_POSIX_V7_LP64_OFF64_LDFLAGS
    660     _CS_POSIX_V7_LP64_OFF64_LIBS,
    661 #define _CS_POSIX_V7_LP64_OFF64_LIBS _CS_POSIX_V7_LP64_OFF64_LIBS
    662     _CS_POSIX_V7_LP64_OFF64_LINTFLAGS,
    663 #define _CS_POSIX_V7_LP64_OFF64_LINTFLAGS _CS_POSIX_V7_LP64_OFF64_LINTFLAGS
    664     _CS_POSIX_V7_LPBIG_OFFBIG_CFLAGS,
    665 #define _CS_POSIX_V7_LPBIG_OFFBIG_CFLAGS _CS_POSIX_V7_LPBIG_OFFBIG_CFLAGS
    666     _CS_POSIX_V7_LPBIG_OFFBIG_LDFLAGS,
    667 #define _CS_POSIX_V7_LPBIG_OFFBIG_LDFLAGS _CS_POSIX_V7_LPBIG_OFFBIG_LDFLAGS
    668     _CS_POSIX_V7_LPBIG_OFFBIG_LIBS,
    669 #define _CS_POSIX_V7_LPBIG_OFFBIG_LIBS _CS_POSIX_V7_LPBIG_OFFBIG_LIBS
    670     _CS_POSIX_V7_LPBIG_OFFBIG_LINTFLAGS
    671 #define _CS_POSIX_V7_LPBIG_OFFBIG_LINTFLAGS _CS_POSIX_V7_LPBIG_OFFBIG_LINTFLAGS
    672   };
    673