File: /usr/include/sys/syslimits.h

Green shading in the line number column means the source is part of the translation unit, red means it is conditionally excluded. Highlighted line numbers link to the translation unit page. Highlighted macros link to the macro page.

       1: /*
       2:  * Copyright (c) 2000 Apple Computer, Inc. All rights reserved.
       3:  *
       4:  * @APPLE_OSREFERENCE_LICENSE_HEADER_START@
       5:  * 
       6:  * This file contains Original Code and/or Modifications of Original Code
       7:  * as defined in and that are subject to the Apple Public Source License
       8:  * Version 2.0 (the 'License'). You may not use this file except in
       9:  * compliance with the License. The rights granted to you under the License
      10:  * may not be used to create, or enable the creation or redistribution of,
      11:  * unlawful or unlicensed copies of an Apple operating system, or to
      12:  * circumvent, violate, or enable the circumvention or violation of, any
      13:  * terms of an Apple operating system software license agreement.
      14:  * 
      15:  * Please obtain a copy of the License at
      16:  * http://www.opensource.apple.com/apsl/ and read it before using this file.
      17:  * 
      18:  * The Original Code and all software distributed under the License are
      19:  * distributed on an 'AS IS' basis, WITHOUT WARRANTY OF ANY KIND, EITHER
      20:  * EXPRESS OR IMPLIED, AND APPLE HEREBY DISCLAIMS ALL SUCH WARRANTIES,
      21:  * INCLUDING WITHOUT LIMITATION, ANY WARRANTIES OF MERCHANTABILITY,
      22:  * FITNESS FOR A PARTICULAR PURPOSE, QUIET ENJOYMENT OR NON-INFRINGEMENT.
      23:  * Please see the License for the specific language governing rights and
      24:  * limitations under the License.
      25:  * 
      26:  * @APPLE_OSREFERENCE_LICENSE_HEADER_END@
      27:  */
      28: /*    $NetBSD: syslimits.h,v 1.15 1997/06/25 00:48:09 lukem Exp $    */
      29: 
      30: /*
      31:  * Copyright (c) 1988, 1993
      32:  *    The Regents of the University of California.  All rights reserved.
      33:  *
      34:  * Redistribution and use in source and binary forms, with or without
      35:  * modification, are permitted provided that the following conditions
      36:  * are met:
      37:  * 1. Redistributions of source code must retain the above copyright
      38:  *    notice, this list of conditions and the following disclaimer.
      39:  * 2. Redistributions in binary form must reproduce the above copyright
      40:  *    notice, this list of conditions and the following disclaimer in the
      41:  *    documentation and/or other materials provided with the distribution.
      42:  * 3. All advertising materials mentioning features or use of this software
      43:  *    must display the following acknowledgement:
      44:  *    This product includes software developed by the University of
      45:  *    California, Berkeley and its contributors.
      46:  * 4. Neither the name of the University nor the names of its contributors
      47:  *    may be used to endorse or promote products derived from this software
      48:  *    without specific prior written permission.
      49:  *
      50:  * THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
      51:  * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
      52:  * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
      53:  * ARE DISCLAIMED.  IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
      54:  * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
      55:  * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
      56:  * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
      57:  * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
      58:  * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
      59:  * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
      60:  * SUCH DAMAGE.
      61:  *
      62:  *    @(#)syslimits.h    8.1 (Berkeley) 6/2/93
      63:  */
      64: 
      65: #ifndef _SYS_SYSLIMITS_H_
      66: #define _SYS_SYSLIMITS_H_
      67: 
      68: #include <sys/cdefs.h>
      69: 
      70: #if !defined(_ANSI_SOURCE)
      71: /*
      72:  * Note: CHILD_MAX *must* be less than hard_maxproc, which is set at
      73:  * compile time; you *cannot* set it higher than the hard limit!!
      74:  */
      75: #define    ARG_MAX           (256 * 1024)    /* max bytes for an exec function */
      76: #if !defined(_POSIX_C_SOURCE) || defined(_DARWIN_C_SOURCE)
      77: #define    CHILD_MAX           266    /* max simultaneous processes */
      78: #define    GID_MAX           2147483647U    /* max value for a gid_t (2^31-2) */
      79: #endif /* (_POSIX_C_SOURCE && !_DARWIN_C_SOURCE) */
      80: #define    LINK_MAX        32767    /* max file link count */
      81: #define    MAX_CANON         1024    /* max bytes in term canon input line */
      82: #define    MAX_INPUT         1024    /* max bytes in terminal input */
      83: #define    NAME_MAX          255    /* max bytes in a file name */
      84: #define    NGROUPS_MAX           16    /* max supplemental group id's */
      85: #if !defined(_POSIX_C_SOURCE) || defined(_DARWIN_C_SOURCE)
      86: #define    UID_MAX           2147483647U    /* max value for a uid_t (2^31-2) */
      87: 
      88: #define    OPEN_MAX        10240    /* max open files per process - todo, make a config option? */
      89: 
      90: #endif /* (_POSIX_C_SOURCE && !_DARWIN_C_SOURCE) */
      91: #define    PATH_MAX         1024    /* max bytes in pathname */
      92: #define    PIPE_BUF          512    /* max bytes for atomic pipe writes */
      93: 
      94: #define    BC_BASE_MAX           99    /* max ibase/obase values in bc(1) */
      95: #define    BC_DIM_MAX         2048    /* max array elements in bc(1) */
      96: #define    BC_SCALE_MAX           99    /* max scale value in bc(1) */
      97: #define    BC_STRING_MAX         1000    /* max const string length in bc(1) */
      98: #define    CHARCLASS_NAME_MAX       14    /* max character class name size */
      99: #define    COLL_WEIGHTS_MAX        2    /* max weights for order keyword */
     100: #define    EQUIV_CLASS_MAX            2
     101: #define    EXPR_NEST_MAX           32    /* max expressions nested in expr(1) */
     102: #define    LINE_MAX         2048    /* max bytes in an input line */
     103: #define    RE_DUP_MAX          255    /* max RE's in interval notation */
     104: 
     105: #if __DARWIN_UNIX03
     106: #define    NZERO               20    /* default priority [XSI] */
     107:                     /* = ((PRIO_MAX - PRIO_MIN) / 2) + 1 */
     108:                     /* range: 0 - 39 [(2 * NZERO) - 1] */
     109:                     /* 0 is not actually used */
     110: #else /* !__DARWIN_UNIX03 */
     111: #define    NZERO                0    /* default priority */
     112:                     /* range: -20 - 20 */
     113:                     /* (PRIO_MIN - PRIO_MAX) */
     114: #endif /* __DARWIN_UNIX03 */
     115: #endif /* !_ANSI_SOURCE */
     116: 
     117: #endif /* !_SYS_SYSLIMITS_H_ */
     118: