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 UINT_MAX __UINT_MAX__
45#define UINT_MAX MHD_UNSIGNED_TYPE_MAX_ (unsigned int)
51#define LONG_MAX __LONG_MAX__
53#define LONG_MAX MHD_SIGNED_TYPE_MAX (long)
58#define ULLONG_MAX MHD_UNSIGNED_TYPE_MAX_ (MHD_UNSIGNED_LONG_LONG)
63#define INT32_MAX __INT32_MAX__
65#define INT32_MAX ((int32_t) 0x7FFFFFFF)
71#define UINT32_MAX __UINT32_MAX__
73#define UINT32_MAX ((int32_t) 0xFFFFFFFF)
79#define UINT64_MAX __UINT64_MAX__
81#define UINT64_MAX ((uint64_t) 0xFFFFFFFFFFFFFFFF)
87#define INT64_MAX __INT64_MAX__
89#define INT64_MAX ((int64_t) 0x7FFFFFFFFFFFFFFF)
95#define SIZE_MAX __SIZE_MAX__
96#elif defined(UINTPTR_MAX)
97#define SIZE_MAX UINTPTR_MAX
99#define SIZE_MAX MHD_UNSIGNED_TYPE_MAX_ (size_t)
105#define SSIZE_MAX __SSIZE_MAX__
106#elif defined(PTRDIFF_MAX)
107#define SSIZE_MAX PTRDIFF_MAX
108#elif defined(INTPTR_MAX)
109#define SSIZE_MAX INTPTR_MAX
111#define SSIZE_MAN MHD_SIGNED_TYPE_MAX_ (ssize_t)
117#define OFF_T_MAX OFF_MAX
118#elif defined(OFFT_MAX)
119#define OFF_T_MAX OFFT_MAX
120#elif defined(__APPLE__) && defined(__MACH__)
121#define OFF_T_MAX INT64_MAX
123#define OFF_T_MAX MHD_SIGNED_TYPE_MAX_ (off_t)
127#if defined(_LARGEFILE64_SOURCE) && ! defined(OFF64_T_MAX)
128#define OFF64_T_MAX MHD_SIGNED_TYPE_MAX_ (uint64_t)
132#define TIME_T_MAX ((time_t) \
133 (MHD_TYPE_IS_SIGNED_ (time_t) ? \
134 MHD_SIGNED_TYPE_MAX_ (time_t) : \
135 MHD_UNSIGNED_TYPE_MAX_ (time_t)))
138#ifndef TIMEVAL_TV_SEC_MAX
140#define TIMEVAL_TV_SEC_MAX TIME_T_MAX
142#define TIMEVAL_TV_SEC_MAX LONG_MAX
146#ifndef MHD_FD_BLOCK_SIZE
148#define MHD_FD_BLOCK_SIZE 16384
150#define MHD_FD_BLOCK_SIZE 4096