35#define MHD_UNSIGNED_TYPE_MAX_(type) ((type) - 1)
37#define MHD_SIGNED_TYPE_MAX_(type) \
38 ( (type) ((( ((type) 1) << (sizeof(type) * 8 - 2)) - 1) * 2 + 1) )
39#define MHD_TYPE_IS_SIGNED_(type) (((type) 0)>((type) - 1))
43#define INT_MAX __INT_MAX__
45#define INT_MAX MHD_SIGNED_TYPE_MAX_ (int)
51#define UINT_MAX __UINT_MAX__
53#define UINT_MAX MHD_UNSIGNED_TYPE_MAX_ (unsigned int)
59#define LONG_MAX __LONG_MAX__
61#define LONG_MAX MHD_SIGNED_TYPE_MAX (long)
67#define ULLONG_MAX ULONGLONG_MAX
69#define ULLONG_MAX MHD_UNSIGNED_TYPE_MAX_ (MHD_UNSIGNED_LONG_LONG)
75#define INT32_MAX __INT32_MAX__
77#define INT32_MAX ((int32_t) 0x7FFFFFFF)
83#define UINT32_MAX __UINT32_MAX__
85#define UINT32_MAX ((int32_t) 0xFFFFFFFF)
91#define UINT64_MAX __UINT64_MAX__
93#define UINT64_MAX ((uint64_t) 0xFFFFFFFFFFFFFFFF)
99#define INT64_MAX __INT64_MAX__
101#define INT64_MAX ((int64_t) 0x7FFFFFFFFFFFFFFF)
107#define SIZE_MAX __SIZE_MAX__
108#elif defined(UINTPTR_MAX)
109#define SIZE_MAX UINTPTR_MAX
111#define SIZE_MAX MHD_UNSIGNED_TYPE_MAX_ (size_t)
117#define SSIZE_MAX __SSIZE_MAX__
118#elif defined(INTPTR_MAX)
119#define SSIZE_MAX INTPTR_MAX
121#define SSIZE_MAX MHD_SIGNED_TYPE_MAX_ (ssize_t)
127#define OFF_T_MAX OFF_MAX
128#elif defined(OFFT_MAX)
129#define OFF_T_MAX OFFT_MAX
130#elif defined(__APPLE__) && defined(__MACH__)
131#define OFF_T_MAX INT64_MAX
133#define OFF_T_MAX MHD_SIGNED_TYPE_MAX_ (off_t)
137#if defined(_LARGEFILE64_SOURCE) && ! defined(OFF64_T_MAX)
138#define OFF64_T_MAX MHD_SIGNED_TYPE_MAX_ (uint64_t)
142#define TIME_T_MAX ((time_t) \
143 (MHD_TYPE_IS_SIGNED_ (time_t) ? \
144 MHD_SIGNED_TYPE_MAX_ (time_t) : \
145 MHD_UNSIGNED_TYPE_MAX_ (time_t)))
148#ifndef TIMEVAL_TV_SEC_MAX
150#define TIMEVAL_TV_SEC_MAX TIME_T_MAX
152#define TIMEVAL_TV_SEC_MAX LONG_MAX