Loading...
Searching...
No Matches
Go to the documentation of this file.
32#define MHD_OPTIONS_H 1
34#include "MHD_config.h"
42#define _(String) (String)
44#if defined(_MHD_EXTERN) && ! defined(BUILDING_MHD_LIB)
49#if defined(BUILDING_MHD_LIB) && defined(_WIN32) && \
50 (defined(DLL_EXPORT) || defined(MHD_W32DLL))
51#define _MHD_EXTERN __declspec(dllexport) extern
53#define _MHD_EXTERN extern
62#elif defined(_WIN32) || defined(__CYGWIN__)
64#define FD_SETSIZE 2048
67#define _MHD_FD_SETSIZE_IS_DEFAULT 1
70#if defined(HAVE_LINUX_SENDFILE) || defined(HAVE_FREEBSD_SENDFILE) || \
71 defined(HAVE_DARWIN_SENDFILE) || defined(HAVE_SOLARIS_SENDFILE)
73#define _MHD_HAVE_SENDFILE
76#if defined(HAVE_LINUX_SENDFILE) || defined(HAVE_SOLARIS_SENDFILE)
77#define MHD_LINUX_SOLARIS_SENDFILE 1
80#if defined(MHD_USE_POSIX_THREADS) || defined(MHD_USE_W32_THREADS)
81# ifndef MHD_USE_THREADS
82# define MHD_USE_THREADS 1
88#define _OPEN_SYS_SOCK_IPV6
93#if defined(_WIN32) && ! defined(__CYGWIN__)
95#define _CRT_DECLARE_NONSTDC_NAMES 1
97#define _CRT_NONSTDC_NO_WARNINGS 1
99#define _WIN32_WINNT 0x0600
101#if _WIN32_WINNT < 0x0501
102#error "Headers for Windows XP or later are required"
105#ifndef WIN32_LEAN_AND_MEAN
107#define WIN32_LEAN_AND_MEAN 1
111#if defined(__VXWORKS__) || defined(__vxworks) || defined(OS_VXWORKS)
112#define RESTRICT __restrict__
115#if defined(LINUX) && (defined(HAVE_SENDFILE64) || defined(HAVE_LSEEK64)) && \
116 ! defined(_LARGEFILE64_SOURCE)
118#define _LARGEFILE64_SOURCE 1
121#ifdef HAVE_C11_GMTIME_S
123#define __STDC_WANT_LIB_EXT1__ 1
126#if defined(MHD_FAVOR_FAST_CODE) && defined(MHD_FAVOR_SMALL_CODE)
128 MHD_FAVOR_FAST_CODE and MHD_FAVOR_SMALL_CODE are both defined. Cannot favor speed and size at the same time.
133#if ! defined(MHD_FAVOR_FAST_CODE) && ! defined(MHD_FAVOR_SMALL_CODE)
136#if defined(__OPTIMIZE_SIZE__)
137#define MHD_FAVOR_SMALL_CODE 1
138#elif defined(__OPTIMIZE__)
139#define MHD_FAVOR_FAST_CODE 1
143#if ! defined(MHD_FAVOR_FAST_CODE) && ! defined(MHD_FAVOR_SMALL_CODE)
145#define MHD_FAVOR_FAST_CODE 1
148#ifndef MHD_ASAN_ACTIVE
149#if (defined(__GNUC__) || defined(_MSC_VER)) && defined(__SANITIZE_ADDRESS__)
150#define MHD_ASAN_ACTIVE 1
151#elif defined(__has_feature)
152#if __has_feature (address_sanitizer)
153#define MHD_ASAN_ACTIVE 1
158#if defined(MHD_ASAN_ACTIVE) && defined(HAVE_SANITIZER_ASAN_INTERFACE_H) && \
159 (defined(FUNC_PTRCOMPARE_CAST_WORKAROUND_WORKS) || \
160 (defined(FUNC_ATTR_PTRCOMPARE_WORKS) && \
161 defined(FUNC_ATTR_PTRSUBTRACT_WORKS)) || \
162 defined(FUNC_ATTR_NOSANITIZE_WORKS))
163#ifndef MHD_ASAN_POISON_ACTIVE
165#warning User memory poisoning is not active
169#ifdef MHD_ASAN_POISON_ACTIVE
170#error User memory poisoning is active, but conditions are not suitable
176# define MHD_DATA_TRUNCATION_RUNTIME_CHECK_DISABLE_
177# define MHD_DATA_TRUNCATION_RUNTIME_CHECK_RESTORE_
179# define MHD_DATA_TRUNCATION_RUNTIME_CHECK_DISABLE_ \
180 __pragma(runtime_checks("c", off))
181# define MHD_DATA_TRUNCATION_RUNTIME_CHECK_RESTORE_ \
182 __pragma(runtime_checks("c", restore))
188#if defined(HAVE___FUNC__)
189#define MHD_FUNC_ __func__
190#define MHD_HAVE_MHD_FUNC_ 1
191#elif defined(HAVE___FUNCTION__)
192#define MHD_FUNC_ __FUNCTION__
193#define MHD_HAVE_MHD_FUNC_ 1
194#elif defined(HAVE___PRETTY_FUNCTION__)
195#define MHD_FUNC_ __PRETTY_FUNCTION__
196#define MHD_HAVE_MHD_FUNC_ 1
198#define MHD_FUNC_ "**name unavailable**"
199#ifdef MHD_HAVE_MHD_FUNC_
200#undef MHD_HAVE_MHD_FUNC_
209#ifdef HAVE_DECL__SC_NPROCESSORS_ONLN
210# if 0 == HAVE_DECL__SC_NPROCESSORS_ONLN
211# undef HAVE_DECL__SC_NPROCESSORS_ONLN
213# define HAS_DECL__SC_NPROCESSORS_ONLN 1
217#ifdef HAVE_DECL__SC_NPROCESSORS_CONF
218# if 0 == HAVE_DECL__SC_NPROCESSORS_CONF
219# undef HAVE_DECL__SC_NPROCESSORS_CONF
221# define HAS_DECL__SC_NPROCESSORS_CONF 1
225#ifdef HAVE_DECL__SC_NPROC_ONLN
226# if 0 == HAVE_DECL__SC_NPROC_ONLN
227# undef HAVE_DECL__SC_NPROC_ONLN
229# define HAS_DECL__SC_NPROC_ONLN 1
233#ifdef HAVE_DECL__SC_CRAY_NCPU
234# if 0 == HAVE_DECL__SC_CRAY_NCPU
235# undef HAVE_DECL__SC_CRAY_NCPU
237# define HAS_DECL__SC_CRAY_NCPU 1
241#ifdef HAVE_DECL_CTL_HW
242# if 0 == HAVE_DECL_CTL_HW
243# undef HAVE_DECL_CTL_HW
245# define HAS_DECL_CTL_HW 1
249#ifdef HAVE_DECL_HW_NCPUONLINE
250# if 0 == HAVE_DECL_HW_NCPUONLINE
251# undef HAVE_DECL_HW_NCPUONLINE
253# define HAS_DECL_HW_NCPUONLINE 1
257#ifdef HAVE_DECL_HW_AVAILCPU
258# if 0 == HAVE_DECL_HW_AVAILCPU
259# undef HAVE_DECL_HW_AVAILCPU
261# define HAS_DECL_HW_AVAILCPU 1
265#ifdef HAVE_DECL_HW_NCPU
266# if 0 == HAVE_DECL_HW_NCPU
267# undef HAVE_DECL_HW_NCPU
269# define HAS_DECL_HW_NCPU 1
273#ifdef HAVE_DECL_CPU_SETSIZE
274# if 0 == HAVE_DECL_CPU_SETSIZE
275# undef HAVE_DECL_CPU_SETSIZE
277# define HAS_DECL_CPU_SETSIZE 1
281#ifndef MHD_DAUTH_DEF_TIMEOUT_
282# define MHD_DAUTH_DEF_TIMEOUT_ 90
284#ifndef MHD_DAUTH_DEF_MAX_NC_
285# define MHD_DAUTH_DEF_MAX_NC_ 1000