(linenum→info "unix/slp.c:2238")

glibc/2.7/posix/getconf.c

    1: /* Copyright (C) 1991, 92, 1995-2006, 2007 Free Software Foundation, Inc.
    2:    This file is part of the GNU C Library.
    3: 
    4:    This program is free software; you can redistribute it and/or modify
    5:    it under the terms of the GNU General Public License as published
    6:    by the Free Software Foundation; version 2 of the License, or
    7:    (at your option) any later version.
    8: 
    9:    This program 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
   12:    GNU General Public License for more details.
   13: 
   14:    You should have received a copy of the GNU General Public License
   15:    along with this program; if not, write to the Free Software Foundation,
   16:    Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.  */
   17: 
   18: #include <unistd.h>
   19: #include <errno.h>
   20: #include <error.h>
   21: #include <libintl.h>
   22: #include <locale.h>
   23: #include <string.h>
   24: #include <stdlib.h>
   25: #include <stdio.h>
   26: 
   27: #include "../version.h"
   28: #define PACKAGE _libc_intl_domainname
   29: 
   30: struct conf
   31:   {
   32:     const char *name;
   33:     const int call_name;
   34:     const enum { SYSCONF, CONFSTR, PATHCONF } call;
   35:   };
   36: 
   37: static const struct conf vars[] =
   38:   {
   39: #ifdef _PC_LINK_MAX
   40:     { "LINK_MAX", _PC_LINK_MAX, PATHCONF },
   41: #endif
   42: #ifdef _PC_LINK_MAX
   43:     { "_POSIX_LINK_MAX", _PC_LINK_MAX, PATHCONF },
   44: #endif
   45: #ifdef _PC_MAX_CANON
   46:     { "MAX_CANON", _PC_MAX_CANON, PATHCONF },
   47: #endif
   48: #ifdef _PC_MAX_CANON
   49:     { "_POSIX_MAX_CANON", _PC_MAX_CANON, PATHCONF },
   50: #endif
   51: #ifdef _PC_MAX_INPUT
   52:     { "MAX_INPUT", _PC_MAX_INPUT, PATHCONF },
   53: #endif
   54: #ifdef _PC_MAX_INPUT
   55:     { "_POSIX_MAX_INPUT", _PC_MAX_INPUT, PATHCONF },
   56: #endif
   57: #ifdef _PC_NAME_MAX
   58:     { "NAME_MAX", _PC_NAME_MAX, PATHCONF },
   59: #endif
   60: #ifdef _PC_NAME_MAX
   61:     { "_POSIX_NAME_MAX", _PC_NAME_MAX, PATHCONF },
   62: #endif
   63: #ifdef _PC_PATH_MAX
   64:     { "PATH_MAX", _PC_PATH_MAX, PATHCONF },
   65: #endif
   66: #ifdef _PC_PATH_MAX
   67:     { "_POSIX_PATH_MAX", _PC_PATH_MAX, PATHCONF },
   68: #endif
   69: #ifdef _PC_PIPE_BUF
   70:     { "PIPE_BUF", _PC_PIPE_BUF, PATHCONF },
   71: #endif
   72: #ifdef _PC_PIPE_BUF
   73:     { "_POSIX_PIPE_BUF", _PC_PIPE_BUF, PATHCONF },
   74: #endif
   75: #ifdef _PC_SOCK_MAXBUF
   76:     { "SOCK_MAXBUF", _PC_SOCK_MAXBUF, PATHCONF },
   77: #endif
   78: #ifdef _PC_ASYNC_IO
   79:     { "_POSIX_ASYNC_IO", _PC_ASYNC_IO, PATHCONF },
   80: #endif
   81: #ifdef _PC_CHOWN_RESTRICTED
   82:     { "_POSIX_CHOWN_RESTRICTED", _PC_CHOWN_RESTRICTED, PATHCONF },
   83: #endif
   84: #ifdef _PC_NO_TRUNC
   85:     { "_POSIX_NO_TRUNC", _PC_NO_TRUNC, PATHCONF },
   86: #endif
   87: #ifdef _PC_PRIO_IO
   88:     { "_POSIX_PRIO_IO", _PC_PRIO_IO, PATHCONF },
   89: #endif
   90: #ifdef _PC_SYNC_IO
   91:     { "_POSIX_SYNC_IO", _PC_SYNC_IO, PATHCONF },
   92: #endif
   93: #ifdef _PC_VDISABLE
   94:     { "_POSIX_VDISABLE", _PC_VDISABLE, PATHCONF },
   95: #endif
   96: 
   97: #ifdef _SC_ARG_MAX
   98:     { "ARG_MAX", _SC_ARG_MAX, SYSCONF },
   99: #endif
  100: #ifdef _SC_ATEXIT_MAX
  101:     { "ATEXIT_MAX", _SC_ATEXIT_MAX, SYSCONF },
  102: #endif
  103: #ifdef _SC_CHAR_BIT
  104:     { "CHAR_BIT", _SC_CHAR_BIT, SYSCONF },
  105: #endif
  106: #ifdef _SC_CHAR_MAX
  107:     { "CHAR_MAX", _SC_CHAR_MAX, SYSCONF },
  108: #endif
  109: #ifdef _SC_CHAR_MIN
  110:     { "CHAR_MIN", _SC_CHAR_MIN, SYSCONF },
  111: #endif
  112: #ifdef _SC_CHILD_MAX
  113:     { "CHILD_MAX", _SC_CHILD_MAX, SYSCONF },
  114: #endif
  115: #ifdef _SC_CLK_TCK
  116:     { "CLK_TCK", _SC_CLK_TCK, SYSCONF },
  117: #endif
  118: #ifdef _SC_INT_MAX
  119:     { "INT_MAX", _SC_INT_MAX, SYSCONF },
  120: #endif
  121: #ifdef _SC_INT_MIN
  122:     { "INT_MIN", _SC_INT_MIN, SYSCONF },
  123: #endif
  124: #ifdef _SC_UIO_MAXIOV
  125:     { "IOV_MAX", _SC_UIO_MAXIOV, SYSCONF },
  126: #endif
  127: #ifdef _SC_LOGIN_NAME_MAX
  128:     { "LOGNAME_MAX", _SC_LOGIN_NAME_MAX, SYSCONF },
  129: #endif
  130: #ifdef _SC_LONG_BIT
  131:     { "LONG_BIT", _SC_LONG_BIT, SYSCONF },
  132: #endif
  133: #ifdef _SC_MB_LEN_MAX
  134:     { "MB_LEN_MAX", _SC_MB_LEN_MAX, SYSCONF },
  135: #endif
  136: #ifdef _SC_NGROUPS_MAX
  137:     { "NGROUPS_MAX", _SC_NGROUPS_MAX, SYSCONF },
  138: #endif
  139: #ifdef _SC_NL_ARGMAX
  140:     { "NL_ARGMAX", _SC_NL_ARGMAX, SYSCONF },
  141: #endif
  142: #ifdef _SC_NL_LANGMAX
  143:     { "NL_LANGMAX", _SC_NL_LANGMAX, SYSCONF },
  144: #endif
  145: #ifdef _SC_NL_MSGMAX
  146:     { "NL_MSGMAX", _SC_NL_MSGMAX, SYSCONF },
  147: #endif
  148: #ifdef _SC_NL_NMAX
  149:     { "NL_NMAX", _SC_NL_NMAX, SYSCONF },
  150: #endif
  151: #ifdef _SC_NL_SETMAX
  152:     { "NL_SETMAX", _SC_NL_SETMAX, SYSCONF },
  153: #endif
  154: #ifdef _SC_NL_TEXTMAX
  155:     { "NL_TEXTMAX", _SC_NL_TEXTMAX, SYSCONF },
  156: #endif
  157: #ifdef _SC_GETGR_R_SIZE_MAX
  158:     { "NSS_BUFLEN_GROUP", _SC_GETGR_R_SIZE_MAX, SYSCONF },
  159: #endif
  160: #ifdef _SC_GETPW_R_SIZE_MAX
  161:     { "NSS_BUFLEN_PASSWD", _SC_GETPW_R_SIZE_MAX, SYSCONF },
  162: #endif
  163: #ifdef _SC_NZERO
  164:     { "NZERO", _SC_NZERO, SYSCONF },
  165: #endif
  166: #ifdef _SC_OPEN_MAX
  167:     { "OPEN_MAX", _SC_OPEN_MAX, SYSCONF },
  168: #endif
  169: #ifdef _SC_PAGESIZE
  170:     { "PAGESIZE", _SC_PAGESIZE, SYSCONF },
  171: #endif
  172: #ifdef _SC_PAGESIZE
  173:     { "PAGE_SIZE", _SC_PAGESIZE, SYSCONF },
  174: #endif
  175: #ifdef _SC_PASS_MAX
  176:     { "PASS_MAX", _SC_PASS_MAX, SYSCONF },
  177: #endif
  178: #ifdef _SC_THREAD_DESTRUCTOR_ITERATIONS
  179:     { "PTHREAD_DESTRUCTOR_ITERATIONS", _SC_THREAD_DESTRUCTOR_ITERATIONS, SYSCONF },
  180: #endif
  181: #ifdef _SC_THREAD_KEYS_MAX
  182:     { "PTHREAD_KEYS_MAX", _SC_THREAD_KEYS_MAX, SYSCONF },
  183: #endif
  184: #ifdef _SC_THREAD_STACK_MIN
  185:     { "PTHREAD_STACK_MIN", _SC_THREAD_STACK_MIN, SYSCONF },
  186: #endif
  187: #ifdef _SC_THREAD_THREADS_MAX
  188:     { "PTHREAD_THREADS_MAX", _SC_THREAD_THREADS_MAX, SYSCONF },
  189: #endif
  190: #ifdef _SC_SCHAR_MAX
  191:     { "SCHAR_MAX", _SC_SCHAR_MAX, SYSCONF },
  192: #endif
  193: #ifdef _SC_SCHAR_MIN
  194:     { "SCHAR_MIN", _SC_SCHAR_MIN, SYSCONF },
  195: #endif
  196: #ifdef _SC_SHRT_MAX
  197:     { "SHRT_MAX", _SC_SHRT_MAX, SYSCONF },
  198: #endif
  199: #ifdef _SC_SHRT_MIN
  200:     { "SHRT_MIN", _SC_SHRT_MIN, SYSCONF },
  201: #endif
  202: #ifdef _SC_SSIZE_MAX
  203:     { "SSIZE_MAX", _SC_SSIZE_MAX, SYSCONF },
  204: #endif
  205: #ifdef _SC_TTY_NAME_MAX
  206:     { "TTY_NAME_MAX", _SC_TTY_NAME_MAX, SYSCONF },
  207: #endif
  208: #ifdef _SC_TZNAME_MAX
  209:     { "TZNAME_MAX", _SC_TZNAME_MAX, SYSCONF },
  210: #endif
  211: #ifdef _SC_UCHAR_MAX
  212:     { "UCHAR_MAX", _SC_UCHAR_MAX, SYSCONF },
  213: #endif
  214: #ifdef _SC_UINT_MAX
  215:     { "UINT_MAX", _SC_UINT_MAX, SYSCONF },
  216: #endif
  217: #ifdef _SC_UIO_MAXIOV
  218:     { "UIO_MAXIOV", _SC_UIO_MAXIOV, SYSCONF },
  219: #endif
  220: #ifdef _SC_ULONG_MAX
  221:     { "ULONG_MAX", _SC_ULONG_MAX, SYSCONF },
  222: #endif
  223: #ifdef _SC_USHRT_MAX
  224:     { "USHRT_MAX", _SC_USHRT_MAX, SYSCONF },
  225: #endif
  226: #ifdef _SC_WORD_BIT
  227:     { "WORD_BIT", _SC_WORD_BIT, SYSCONF },
  228: #endif
  229: #ifdef _SC_AVPHYS_PAGES
  230:     { "_AVPHYS_PAGES", _SC_AVPHYS_PAGES, SYSCONF },
  231: #endif
  232: #ifdef _SC_NPROCESSORS_CONF
  233:     { "_NPROCESSORS_CONF", _SC_NPROCESSORS_CONF, SYSCONF },
  234: #endif
  235: #ifdef _SC_NPROCESSORS_ONLN
  236:     { "_NPROCESSORS_ONLN", _SC_NPROCESSORS_ONLN, SYSCONF },
  237: #endif
  238: #ifdef _SC_PHYS_PAGES
  239:     { "_PHYS_PAGES", _SC_PHYS_PAGES, SYSCONF },
  240: #endif
  241: #ifdef _SC_ARG_MAX
  242:     { "_POSIX_ARG_MAX", _SC_ARG_MAX, SYSCONF },
  243: #endif
  244: #ifdef _SC_ASYNCHRONOUS_IO
  245:     { "_POSIX_ASYNCHRONOUS_IO", _SC_ASYNCHRONOUS_IO, SYSCONF },
  246: #endif
  247: #ifdef _SC_CHILD_MAX
  248:     { "_POSIX_CHILD_MAX", _SC_CHILD_MAX, SYSCONF },
  249: #endif
  250: #ifdef _SC_FSYNC
  251:     { "_POSIX_FSYNC", _SC_FSYNC, SYSCONF },
  252: #endif
  253: #ifdef _SC_JOB_CONTROL
  254:     { "_POSIX_JOB_CONTROL", _SC_JOB_CONTROL, SYSCONF },
  255: #endif
  256: #ifdef _SC_MAPPED_FILES
  257:     { "_POSIX_MAPPED_FILES", _SC_MAPPED_FILES, SYSCONF },
  258: #endif
  259: #ifdef _SC_MEMLOCK
  260:     { "_POSIX_MEMLOCK", _SC_MEMLOCK, SYSCONF },
  261: #endif
  262: #ifdef _SC_MEMLOCK_RANGE
  263:     { "_POSIX_MEMLOCK_RANGE", _SC_MEMLOCK_RANGE, SYSCONF },
  264: #endif
  265: #ifdef _SC_MEMORY_PROTECTION
  266:     { "_POSIX_MEMORY_PROTECTION", _SC_MEMORY_PROTECTION, SYSCONF },
  267: #endif
  268: #ifdef _SC_MESSAGE_PASSING
  269:     { "_POSIX_MESSAGE_PASSING", _SC_MESSAGE_PASSING, SYSCONF },
  270: #endif
  271: #ifdef _SC_NGROUPS_MAX
  272:     { "_POSIX_NGROUPS_MAX", _SC_NGROUPS_MAX, SYSCONF },
  273: #endif
  274: #ifdef _SC_OPEN_MAX
  275:     { "_POSIX_OPEN_MAX", _SC_OPEN_MAX, SYSCONF },
  276: #endif
  277: #ifdef _SC_PII
  278:     { "_POSIX_PII", _SC_PII, SYSCONF },
  279: #endif
  280: #ifdef _SC_PII_INTERNET
  281:     { "_POSIX_PII_INTERNET", _SC_PII_INTERNET, SYSCONF },
  282: #endif
  283: #ifdef _SC_PII_INTERNET_DGRAM
  284:     { "_POSIX_PII_INTERNET_DGRAM", _SC_PII_INTERNET_DGRAM, SYSCONF },
  285: #endif
  286: #ifdef _SC_PII_INTERNET_STREAM
  287:     { "_POSIX_PII_INTERNET_STREAM", _SC_PII_INTERNET_STREAM, SYSCONF },
  288: #endif
  289: #ifdef _SC_PII_OSI
  290:     { "_POSIX_PII_OSI", _SC_PII_OSI, SYSCONF },
  291: #endif
  292: #ifdef _SC_PII_OSI_CLTS
  293:     { "_POSIX_PII_OSI_CLTS", _SC_PII_OSI_CLTS, SYSCONF },
  294: #endif
  295: #ifdef _SC_PII_OSI_COTS
  296:     { "_POSIX_PII_OSI_COTS", _SC_PII_OSI_COTS, SYSCONF },
  297: #endif
  298: #ifdef _SC_PII_OSI_M
  299:     { "_POSIX_PII_OSI_M", _SC_PII_OSI_M, SYSCONF },
  300: #endif
  301: #ifdef _SC_PII_SOCKET
  302:     { "_POSIX_PII_SOCKET", _SC_PII_SOCKET, SYSCONF },
  303: #endif
  304: #ifdef _SC_PII_XTI
  305:     { "_POSIX_PII_XTI", _SC_PII_XTI, SYSCONF },
  306: #endif
  307: #ifdef _SC_POLL
  308:     { "_POSIX_POLL", _SC_POLL, SYSCONF },
  309: #endif
  310: #ifdef _SC_PRIORITIZED_IO
  311:     { "_POSIX_PRIORITIZED_IO", _SC_PRIORITIZED_IO, SYSCONF },
  312: #endif
  313: #ifdef _SC_PRIORITY_SCHEDULING
  314:     { "_POSIX_PRIORITY_SCHEDULING", _SC_PRIORITY_SCHEDULING, SYSCONF },
  315: #endif
  316: #ifdef _SC_REALTIME_SIGNALS
  317:     { "_POSIX_REALTIME_SIGNALS", _SC_REALTIME_SIGNALS, SYSCONF },
  318: #endif
  319: #ifdef _SC_SAVED_IDS
  320:     { "_POSIX_SAVED_IDS", _SC_SAVED_IDS, SYSCONF },
  321: #endif
  322: #ifdef _SC_SELECT
  323:     { "_POSIX_SELECT", _SC_SELECT, SYSCONF },
  324: #endif
  325: #ifdef _SC_SEMAPHORES
  326:     { "_POSIX_SEMAPHORES", _SC_SEMAPHORES, SYSCONF },
  327: #endif
  328: #ifdef _SC_SHARED_MEMORY_OBJECTS
  329:     { "_POSIX_SHARED_MEMORY_OBJECTS", _SC_SHARED_MEMORY_OBJECTS, SYSCONF },
  330: #endif
  331: #ifdef _SC_SSIZE_MAX
  332:     { "_POSIX_SSIZE_MAX", _SC_SSIZE_MAX, SYSCONF },
  333: #endif
  334: #ifdef _SC_STREAM_MAX
  335:     { "_POSIX_STREAM_MAX", _SC_STREAM_MAX, SYSCONF },
  336: #endif
  337: #ifdef _SC_SYNCHRONIZED_IO
  338:     { "_POSIX_SYNCHRONIZED_IO", _SC_SYNCHRONIZED_IO, SYSCONF },
  339: #endif
  340: #ifdef _SC_THREADS
  341:     { "_POSIX_THREADS", _SC_THREADS, SYSCONF },
  342: #endif
  343: #ifdef _SC_THREAD_ATTR_STACKADDR
  344:     { "_POSIX_THREAD_ATTR_STACKADDR", _SC_THREAD_ATTR_STACKADDR, SYSCONF },
  345: #endif
  346: #ifdef _SC_THREAD_ATTR_STACKSIZE
  347:     { "_POSIX_THREAD_ATTR_STACKSIZE", _SC_THREAD_ATTR_STACKSIZE, SYSCONF },
  348: #endif
  349: #ifdef _SC_THREAD_PRIORITY_SCHEDULING
  350:     { "_POSIX_THREAD_PRIORITY_SCHEDULING", _SC_THREAD_PRIORITY_SCHEDULING, SYSCONF },
  351: #endif
  352: #ifdef _SC_THREAD_PRIO_INHERIT
  353:     { "_POSIX_THREAD_PRIO_INHERIT", _SC_THREAD_PRIO_INHERIT, SYSCONF },
  354: #endif
  355: #ifdef _SC_THREAD_PRIO_PROTECT
  356:     { "_POSIX_THREAD_PRIO_PROTECT", _SC_THREAD_PRIO_PROTECT, SYSCONF },
  357: #endif
  358: #ifdef _SC_THREAD_PROCESS_SHARED
  359:     { "_POSIX_THREAD_PROCESS_SHARED", _SC_THREAD_PROCESS_SHARED, SYSCONF },
  360: #endif
  361: #ifdef _SC_THREAD_SAFE_FUNCTIONS
  362:     { "_POSIX_THREAD_SAFE_FUNCTIONS", _SC_THREAD_SAFE_FUNCTIONS, SYSCONF },
  363: #endif
  364: #ifdef _SC_TIMERS
  365:     { "_POSIX_TIMERS", _SC_TIMERS, SYSCONF },
  366: #endif
  367: #ifdef _SC_TIMER_MAX
  368:     { "TIMER_MAX", _SC_TIMER_MAX, SYSCONF },
  369: #endif
  370: #ifdef _SC_TZNAME_MAX
  371:     { "_POSIX_TZNAME_MAX", _SC_TZNAME_MAX, SYSCONF },
  372: #endif
  373: #ifdef _SC_VERSION
  374:     { "_POSIX_VERSION", _SC_VERSION, SYSCONF },
  375: #endif
  376: #ifdef _SC_T_IOV_MAX
  377:     { "_T_IOV_MAX", _SC_T_IOV_MAX, SYSCONF },
  378: #endif
  379: #ifdef _SC_XOPEN_CRYPT
  380:     { "_XOPEN_CRYPT", _SC_XOPEN_CRYPT, SYSCONF },
  381: #endif
  382: #ifdef _SC_XOPEN_ENH_I18N
  383:     { "_XOPEN_ENH_I18N", _SC_XOPEN_ENH_I18N, SYSCONF },
  384: #endif
  385: #ifdef _SC_XOPEN_LEGACY
  386:     { "_XOPEN_LEGACY", _SC_XOPEN_LEGACY, SYSCONF },
  387: #endif
  388: #ifdef _SC_XOPEN_REALTIME
  389:     { "_XOPEN_REALTIME", _SC_XOPEN_REALTIME, SYSCONF },
  390: #endif
  391: #ifdef _SC_XOPEN_REALTIME_THREADS
  392:     { "_XOPEN_REALTIME_THREADS", _SC_XOPEN_REALTIME_THREADS, SYSCONF },
  393: #endif
  394: #ifdef _SC_XOPEN_SHM
  395:     { "_XOPEN_SHM", _SC_XOPEN_SHM, SYSCONF },
  396: #endif
  397: #ifdef _SC_XOPEN_UNIX
  398:     { "_XOPEN_UNIX", _SC_XOPEN_UNIX, SYSCONF },
  399: #endif
  400: #ifdef _SC_XOPEN_VERSION
  401:     { "_XOPEN_VERSION", _SC_XOPEN_VERSION, SYSCONF },
  402: #endif
  403: #ifdef _SC_XOPEN_XCU_VERSION
  404:     { "_XOPEN_XCU_VERSION", _SC_XOPEN_XCU_VERSION, SYSCONF },
  405: #endif
  406: #ifdef _SC_XOPEN_XPG2
  407:     { "_XOPEN_XPG2", _SC_XOPEN_XPG2, SYSCONF },
  408: #endif
  409: #ifdef _SC_XOPEN_XPG3
  410:     { "_XOPEN_XPG3", _SC_XOPEN_XPG3, SYSCONF },
  411: #endif
  412: #ifdef _SC_XOPEN_XPG4
  413:     { "_XOPEN_XPG4", _SC_XOPEN_XPG4, SYSCONF },
  414: #endif
  415:     /* POSIX.2  */
  416: #ifdef _SC_BC_BASE_MAX
  417:     { "BC_BASE_MAX", _SC_BC_BASE_MAX, SYSCONF },
  418: #endif
  419: #ifdef _SC_BC_DIM_MAX
  420:     { "BC_DIM_MAX", _SC_BC_DIM_MAX, SYSCONF },
  421: #endif
  422: #ifdef _SC_BC_SCALE_MAX
  423:     { "BC_SCALE_MAX", _SC_BC_SCALE_MAX, SYSCONF },
  424: #endif
  425: #ifdef _SC_BC_STRING_MAX
  426:     { "BC_STRING_MAX", _SC_BC_STRING_MAX, SYSCONF },
  427: #endif
  428:     { "CHARCLASS_NAME_MAX", _SC_CHARCLASS_NAME_MAX, SYSCONF },
  429: #ifdef _SC_COLL_WEIGHTS_MAX
  430:     { "COLL_WEIGHTS_MAX", _SC_COLL_WEIGHTS_MAX, SYSCONF },
  431: #endif
  432: #ifdef _SC_EQUIV_CLASS_MAX
  433:     { "EQUIV_CLASS_MAX", _SC_EQUIV_CLASS_MAX, SYSCONF },
  434: #endif
  435: #ifdef _SC_EXPR_NEST_MAX
  436:     { "EXPR_NEST_MAX", _SC_EXPR_NEST_MAX, SYSCONF },
  437: #endif
  438: #ifdef _SC_LINE_MAX
  439:     { "LINE_MAX", _SC_LINE_MAX, SYSCONF },
  440: #endif
  441: #ifdef _SC_BC_BASE_MAX
  442:     { "POSIX2_BC_BASE_MAX", _SC_BC_BASE_MAX, SYSCONF },
  443: #endif
  444: #ifdef _SC_BC_DIM_MAX
  445:     { "POSIX2_BC_DIM_MAX", _SC_BC_DIM_MAX, SYSCONF },
  446: #endif
  447: #ifdef _SC_BC_SCALE_MAX
  448:     { "POSIX2_BC_SCALE_MAX", _SC_BC_SCALE_MAX, SYSCONF },
  449: #endif
  450: #ifdef _SC_BC_STRING_MAX
  451:     { "POSIX2_BC_STRING_MAX", _SC_BC_STRING_MAX, SYSCONF },
  452: #endif
  453: #ifdef _SC_2_CHAR_TERM
  454:     { "POSIX2_CHAR_TERM", _SC_2_CHAR_TERM, SYSCONF },
  455: #endif
  456: #ifdef _SC_COLL_WEIGHTS_MAX
  457:     { "POSIX2_COLL_WEIGHTS_MAX", _SC_COLL_WEIGHTS_MAX, SYSCONF },
  458: #endif
  459: #ifdef _SC_2_C_BIND
  460:     { "POSIX2_C_BIND", _SC_2_C_BIND, SYSCONF },
  461: #endif
  462: #ifdef _SC_2_C_DEV
  463:     { "POSIX2_C_DEV", _SC_2_C_DEV, SYSCONF },
  464: #endif
  465: #ifdef _SC_2_C_VERSION
  466:     { "POSIX2_C_VERSION", _SC_2_C_VERSION, SYSCONF },
  467: #endif
  468: #ifdef _SC_EXPR_NEST_MAX
  469:     { "POSIX2_EXPR_NEST_MAX", _SC_EXPR_NEST_MAX, SYSCONF },
  470: #endif
  471: #ifdef _SC_2_FORT_DEV
  472:     { "POSIX2_FORT_DEV", _SC_2_FORT_DEV, SYSCONF },
  473: #endif
  474: #ifdef _SC_2_FORT_RUN
  475:     { "POSIX2_FORT_RUN", _SC_2_FORT_RUN, SYSCONF },
  476: #endif
  477: #ifdef _SC_LINE_MAX
  478:     { "_POSIX2_LINE_MAX", _SC_LINE_MAX, SYSCONF },
  479: #endif
  480: #ifdef _SC_2_LOCALEDEF
  481:     { "POSIX2_LOCALEDEF", _SC_2_LOCALEDEF, SYSCONF },
  482: #endif
  483: #ifdef _SC_RE_DUP_MAX
  484:     { "POSIX2_RE_DUP_MAX", _SC_RE_DUP_MAX, SYSCONF },
  485: #endif
  486: #ifdef _SC_2_SW_DEV
  487:     { "POSIX2_SW_DEV", _SC_2_SW_DEV, SYSCONF },
  488: #endif
  489: #ifdef _SC_2_UPE
  490:     { "POSIX2_UPE", _SC_2_UPE, SYSCONF },
  491: #endif
  492: #ifdef _SC_2_VERSION
  493:     { "POSIX2_VERSION", _SC_2_VERSION, SYSCONF },
  494: #endif
  495: #ifdef _SC_RE_DUP_MAX
  496:     { "RE_DUP_MAX", _SC_RE_DUP_MAX, SYSCONF },
  497: #endif
  498: 
  499: #ifdef _CS_PATH
  500:     { "PATH", _CS_PATH, CONFSTR },
  501:     { "CS_PATH", _CS_PATH, CONFSTR },
  502: #endif
  503: 
  504:     /* LFS */
  505: #ifdef _CS_LFS_CFLAGS
  506:     { "LFS_CFLAGS", _CS_LFS_CFLAGS, CONFSTR },
  507: #endif
  508: #ifdef _CS_LFS_LDFLAGS
  509:     { "LFS_LDFLAGS", _CS_LFS_LDFLAGS, CONFSTR },
  510: #endif
  511: #ifdef _CS_LFS_LIBS