commit 68c338e529b38e430d8b8aa8bfbc9aa73eacdf9e parent 6d04461575415ffd41bd2f9d47c37d80af01d827 Author: Yersa Nordman <finwo@pm.me> Date: Sat, 12 Oct 2019 00:34:04 +0200 Added limits.h Diffstat:
| A | include/limits.h | | | 87 | +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ |
1 file changed, 87 insertions(+), 0 deletions(-)
diff --git a/include/limits.h b/include/limits.h @@ -0,0 +1,87 @@ +#ifndef _LIMITS_H_ +#define _LIMITS_H_ + +#ifndef __SCHAR_MAX__ +#define __SCHAR_MAX__ 0x7f +#endif +#ifndef __SHRT_MAX__ +#define __SHRT_MAX__ 0x7fff +#endif +#ifndef __INT_MAX__ +#define __INT_MAX__ 0x7fffffff +#endif +#ifndef __LONG_MAX__ +#if __WORDSIZE == 64 +#define __LONG_MAX__ 0x7fffffffffffffffl +#else +#define __LONG_MAX__ 0x7fffffffl +#endif +#endif + +#define CHAR_BIT 8 + +#define SCHAR_MIN (-1 - SCHAR_MAX) +#define SCHAR_MAX (__SCHAR_MAX__) +#define UCHAR_MAX (SCHAR_MAX * 2 + 1) + +#ifdef __CHAR_UNSIGNED__ +#undef CHAR_MIN +#define CHAR_MIN 0 +#undef CHAR_MAX +#define CHAR_MAX UCHAR_MAX +#else +#undef CHAR_MIN +#define CHAR_MIN SCHAR_MIN +#undef CHAR_MAX +#define CHAR_MAX SCHAR_MAX +#endif + +#define SHRT_MIN (-1 - SHRT_MAX) +#define SHRT_MAX (__SHRT_MAX__) +#define USHRT_MAX (SHRT_MAX * 2 + 1) + +#define INT_MIN (-1 - INT_MAX) +#define INT_MAX (__INT_MAX__) +#define UINT_MAX (INT_MAX * 2u + 1) + +#define LONG_MIN (-1l - LONG_MAX) +#define LONG_MAX (__LONG_MAX__) +#define ULONG_MAX (LONG_MAX * 2ul + 1) + +#define LLONG_MAX 0x7fffffffffffffffll +#define LLONG_MIN (-1ll - LLONG_MAX) + +/* Maximum value an `unsigned long long int' can hold. (Minimum is 0.) */ +#define ULLONG_MAX (~0ull) + +#define SSIZE_MIN LONG_MIN +#define SSIZE_MAX LONG_MAX + +#define PASS_MAX 256 + +#define NR_OPEN 1024 + +#define NGROUPS_MAX 32 /* supplemental group IDs are available */ +#define ARG_MAX 131072 /* # bytes of args + environ for exec() */ +#define CHILD_MAX 999 /* no limit :-) */ +#define OPEN_MAX 256 /* # open files a process may have */ +#define LINK_MAX 127 /* # links a file may have */ +#define MAX_CANON 255 /* size of the canonical input queue */ +#define MAX_INPUT 255 /* size of the type-ahead buffer */ +#define NAME_MAX 255 /* # chars in a file name */ +#define PATH_MAX 4095 /* # chars in a path name */ +#define PIPE_BUF 4096 /* # bytes in atomic write to a pipe */ + +#define RTSIG_MAX 32 + +#define LINE_MAX 2048 + +/* mutt demanded these */ +#define _POSIX_PATH_MAX PATH_MAX +#define MB_LEN_MAX 16 + +#ifdef _XOPEN_SOURCE +#define IOV_MAX 1024 +#endif + +#endif // _LIMITS_H_