home *** CD-ROM | disk | FTP | other *** search
- /* limits.h
-
- Copyright 1999, 2000, 2001 Red Hat, Inc.
-
- This file is part of Cygwin.
-
- This software is a copyrighted work licensed under the terms of the
- Cygwin license. Please consult the file "CYGWIN_LICENSE" for
- details. */
-
- #ifndef _LIMITS_H___
- #ifndef _MACH_MACHLIMITS_H_
-
- /* _MACH_MACHLIMITS_H_ is used on OSF/1. */
- #define _LIMITS_H___
- #define _MACH_MACHLIMITS_H_
-
- /* Number of bits in a `char'. */
- #undef CHAR_BIT
- #define CHAR_BIT 8
-
- /* Maximum length of a multibyte character. */
- #ifndef MB_LEN_MAX
- #define MB_LEN_MAX 1
- #endif
-
- /* Minimum and maximum values a `signed char' can hold. */
- #undef SCHAR_MIN
- #define SCHAR_MIN (-128)
- #undef SCHAR_MAX
- #define SCHAR_MAX 127
-
- /* Maximum value an `unsigned char' can hold. (Minimum is 0). */
- #undef UCHAR_MAX
- #define UCHAR_MAX 255
-
- /* Minimum and maximum values a `char' can hold. */
- #ifdef __CHAR_UNSIGNED__
- #undef CHAR_MIN
- #define CHAR_MIN 0
- #undef CHAR_MAX
- #define CHAR_MAX 255
- #else
- #undef CHAR_MIN
- #define CHAR_MIN (-128)
- #undef CHAR_MAX
- #define CHAR_MAX 127
- #endif
-
- /* Minimum and maximum values a `signed short int' can hold. */
- #undef SHRT_MIN
- #define SHRT_MIN (-32768)
- #undef SHRT_MAX
- #define SHRT_MAX 32767
-
- /* Maximum value an `unsigned short int' can hold. (Minimum is 0). */
- #undef USHRT_MAX
- #define USHRT_MAX 65535
-
- /* Minimum and maximum values a `signed int' can hold. */
- #ifndef __INT_MAX__
- #define __INT_MAX__ 2147483647
- #endif
- #undef INT_MIN
- #define INT_MIN (-INT_MAX-1)
- #undef INT_MAX
- #define INT_MAX __INT_MAX__
-
- /* Maximum value an `unsigned int' can hold. (Minimum is 0). */
- #undef UINT_MAX
- #define UINT_MAX (INT_MAX * 2U + 1)
-
- /* Minimum and maximum values a `signed long int' can hold.
- (Same as `int'). */
- #ifndef __LONG_MAX__
- #ifndef __alpha__
- #define __LONG_MAX__ 2147483647L
- #else
- #define __LONG_MAX__ 9223372036854775807L
- # endif /* __alpha__ */
- #endif
- #undef LONG_MIN
- #define LONG_MIN (-LONG_MAX-1)
- #undef LONG_MAX
- #define LONG_MAX __LONG_MAX__
-
- /* Maximum value an `unsigned long int' can hold. (Minimum is 0). */
- #undef ULONG_MAX
- #define ULONG_MAX (LONG_MAX * 2UL + 1)
-
- /* Minimum and maximum values a `signed long long int' can hold. */
- #ifndef __LONG_LONG_MAX__
- #define __LONG_LONG_MAX__ 9223372036854775807LL
- #endif
-
- #if defined (__GNU_LIBRARY__) ? defined (__USE_GNU) : !defined (__STRICT_ANSI__)
- #undef LONG_LONG_MIN
- #define LONG_LONG_MIN (-LONG_LONG_MAX-1)
- #undef LONG_LONG_MAX
- #define LONG_LONG_MAX __LONG_LONG_MAX__
-
- /* Maximum value an `unsigned long long int' can hold. (Minimum is 0). */
- #undef ULONG_LONG_MAX
- #define ULONG_LONG_MAX (LONG_LONG_MAX * 2ULL + 1)
- #endif
-
- #if defined (__STDC_VERSION__) && __STDC_VERSION__ >= 199901L
- /* Minimum and maximum values a `signed long long int' can hold. */
- #undef LLONG_MIN
- #define LLONG_MIN (-LLONG_MAX-1)
- #undef LLONG_MAX
- #define LLONG_MAX __LONG_LONG_MAX__
-
- /* Maximum value an `unsigned long long int' can hold. (Minimum is 0). */
- #undef ULLONG_MAX
- #define ULLONG_MAX (LLONG_MAX * 2ULL + 1)
- #endif
-
- /* Maximum number of iovcnt in a writev (an arbitrary number) */
- #undef IOV_MAX
- #define IOV_MAX 1024
-
- /* Maximum size of ssize_t */
- #undef SSIZE_MAX
- #define SSIZE_MAX (__LONG_MAX__)
-
- /* Maximum length of a path */
- #define PATH_MAX (260 - 1 /*NUL*/)
-
- /* Max num groups for a user, value taken from NT documentation */
- /* Must match <sys/param.h> NGROUPS */
- #define NGROUPS_MAX 16
-
- /* WaitForMultipleObjects can't handle waiting for more than 64 objects.
- This limits how many children we can fork/spawn off. */
- #define CHILD_MAX 63
-
- /* # of open files per process. Actually it can be more since Cygwin
- grows the dtable as necessary. We define a reasonable limit here
- which is returned by getdtablesize(), sysconf(_SC_OPEN_MAX) and
- getrlimit(RLIMIT_NOFILE). */
- #undef OPEN_MAX
- #define OPEN_MAX 256
-
- /* # of bytes in a pipe buf. This is the max # of bytes which can be
- written to a pipe in one atomic operation. */
- #undef PIPE_BUF
- #define PIPE_BUF 4096
-
- /* POSIX values */
- /* These should never vary from one system type to another */
- /* They represent the minimum values that POSIX systems must support.
- POSIX-conforming apps must not require larger values. */
- #define _POSIX_ARG_MAX 4096
- #define _POSIX_CHILD_MAX 6
- #define _POSIX_LINK_MAX 8
- #define _POSIX_MAX_CANON 255
- #define _POSIX_MAX_INPUT 255
- #define _POSIX_NAME_MAX 14
- #define _POSIX_NGROUPS_MAX 0
- #define _POSIX_OPEN_MAX 16
- #define _POSIX_PATH_MAX 255
- #define _POSIX_PIPE_BUF 512
- #define _POSIX_SSIZE_MAX 32767
- #define _POSIX_STREAM_MAX 8
- #define _POSIX_TZNAME_MAX 3
-
- #endif /* _MACH_MACHLIMITS_H_ */
- #endif /* _LIMITS_H___ */
-