Project

General

Profile

Statistics
| Revision:

root / lab4 / .minix-src / include / sys / syslimits.h @ 13

History | View | Annotate | Download (3.99 KB)

1
/*        $NetBSD: syslimits.h,v 1.28 2015/08/21 07:19:39 uebayasi Exp $        */
2

    
3
/*
4
 * Copyright (c) 1988, 1993
5
 *        The Regents of the University of California.  All rights reserved.
6
 *
7
 * Redistribution and use in source and binary forms, with or without
8
 * modification, are permitted provided that the following conditions
9
 * are met:
10
 * 1. Redistributions of source code must retain the above copyright
11
 *    notice, this list of conditions and the following disclaimer.
12
 * 2. Redistributions in binary form must reproduce the above copyright
13
 *    notice, this list of conditions and the following disclaimer in the
14
 *    documentation and/or other materials provided with the distribution.
15
 * 3. Neither the name of the University nor the names of its contributors
16
 *    may be used to endorse or promote products derived from this software
17
 *    without specific prior written permission.
18
 *
19
 * THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
20
 * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
21
 * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
22
 * ARE DISCLAIMED.  IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
23
 * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
24
 * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
25
 * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
26
 * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
27
 * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
28
 * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
29
 * SUCH DAMAGE.
30
 *
31
 *        @(#)syslimits.h        8.1 (Berkeley) 6/2/93
32
 */
33

    
34
#ifndef _SYS_SYSLIMITS_H_
35
#define _SYS_SYSLIMITS_H_
36

    
37
#if defined(__minix)
38
#define OPEN_MAX 255
39
#endif /* !defined(__minix) */
40

    
41
#include <sys/featuretest.h>
42

    
43
#if defined(_KERNEL_OPT)
44
#include "opt_syslimits.h"
45
#endif
46

    
47
#if defined(_POSIX_C_SOURCE) || defined(_XOPEN_SOURCE) || \
48
    defined(_NETBSD_SOURCE)
49
#define        ARG_MAX                 (256 * 1024)        /* max bytes for an exec function */
50
#ifndef CHILD_MAX
51
#define        CHILD_MAX                  160        /* max simultaneous processes */
52
#endif
53
#define        GID_MAX                   2147483647U        /* max value for a gid_t (2^31-2) */
54
#define        LINK_MAX                32767        /* max file link count */
55
#define        MAX_CANON                  255        /* max bytes in term canon input line */
56
#define        MAX_INPUT                  255        /* max bytes in terminal input */
57
#define        NAME_MAX                  511        /* max bytes in a file name, must be */
58
                                        /* kept in sync with MAXNAMLEN */
59
#define        NGROUPS_MAX                   16        /* max supplemental group id's */
60
#define        UID_MAX                   2147483647U        /* max value for a uid_t (2^31-2) */
61
#ifndef OPEN_MAX
62
#define        OPEN_MAX                  128        /* max open files per process */
63
#endif
64
#define        PATH_MAX                 1024        /* max bytes in pathname */
65
#if defined(__minix)
66
#define        PIPE_BUF                32768   /* max bytes for atomic pipe writes */
67
#else
68
#define        PIPE_BUF                  512        /* max bytes for atomic pipe writes */
69
#endif /* defined(__minix) */
70

    
71
#define        BC_BASE_MAX              INT_MAX        /* max ibase/obase values in bc(1) */
72
#define        BC_DIM_MAX                65535        /* max array elements in bc(1) */
73
#define        BC_SCALE_MAX              INT_MAX        /* max scale value in bc(1) */
74
#define        BC_STRING_MAX              INT_MAX        /* max const string length in bc(1) */
75
#define        COLL_WEIGHTS_MAX            2        /* max weights for order keyword */
76
#define        EXPR_NEST_MAX                   32        /* max expressions nested in expr(1) */
77
#define        LINE_MAX                 2048        /* max bytes in an input line */
78
#define        RE_DUP_MAX                  255        /* max RE's in interval notation */
79

    
80
/*
81
 * IEEE Std 1003.1c-95, adopted in X/Open CAE Specification Issue 5 Version 2
82
 */
83
#if (_POSIX_C_SOURCE - 0) >= 199506L || (_XOPEN_SOURCE - 0) >= 500 || \
84
    defined(_NETBSD_SOURCE)
85
#define        LOGIN_NAME_MAX                   17        /* max login name length incl. NUL */
86
#endif
87

    
88
/*
89
 * X/Open CAE Specification Issue 5 Version 2
90
 */
91
#if defined(_XOPEN_SOURCE) || defined(_NETBSD_SOURCE)
92
#define        IOV_MAX                         1024        /* max # of iovec's for readv(2) etc. */
93
#define        NZERO                           20        /* default "nice" */
94
#endif /* _XOPEN_SOURCE || _NETBSD_SOURCE */
95

    
96
#endif /* !_ANSI_SOURCE */
97

    
98
#endif /* !_SYS_SYSLIMITS_H_ */