diff options
author | Evgeny Grin (Karlson2k) <k2k@narod.ru> | 2017-03-24 15:44:27 +0300 |
---|---|---|
committer | Evgeny Grin (Karlson2k) <k2k@narod.ru> | 2017-03-24 15:44:27 +0300 |
commit | 0571f7bf52614ac091b9ae37a739539f4dbc0a5a (patch) | |
tree | 09a1a9a2311748c1fd74eced18daee0adce14f9b | |
parent | 65e7a45faac536f7ca00ecca59e6689cb2dff858 (diff) | |
download | libmicrohttpd-0571f7bf52614ac091b9ae37a739539f4dbc0a5a.tar.gz libmicrohttpd-0571f7bf52614ac091b9ae37a739539f4dbc0a5a.zip |
Check for invalid combinations of MHD_OPTION_THREAD_POOL_SIZE and daemon flags.
-rw-r--r-- | src/microhttpd/daemon.c | 18 |
1 files changed, 18 insertions, 0 deletions
diff --git a/src/microhttpd/daemon.c b/src/microhttpd/daemon.c index cbf57773..296c0ee8 100644 --- a/src/microhttpd/daemon.c +++ b/src/microhttpd/daemon.c | |||
@@ -4822,6 +4822,24 @@ parse_options_va (struct MHD_Daemon *daemon, | |||
4822 | void *); | 4822 | void *); |
4823 | break; | 4823 | break; |
4824 | case MHD_OPTION_THREAD_POOL_SIZE: | 4824 | case MHD_OPTION_THREAD_POOL_SIZE: |
4825 | if (0 == (daemon->options & MHD_USE_INTERNAL_POLLING_THREAD)) | ||
4826 | { | ||
4827 | #ifdef HAVE_MESSAGES | ||
4828 | MHD_DLOG (daemon, | ||
4829 | _("MHD_OPTION_THREAD_POOL_SIZE option is specified but " | ||
4830 | "MHD_USE_INTERNAL_POLLING_THREAD flag is not specified.\n")); | ||
4831 | #endif | ||
4832 | return MHD_NO; | ||
4833 | } | ||
4834 | if (0 != (daemon->options & MHD_USE_THREAD_PER_CONNECTION)) | ||
4835 | { | ||
4836 | #ifdef HAVE_MESSAGES | ||
4837 | MHD_DLOG (daemon, | ||
4838 | _("Both MHD_OPTION_THREAD_POOL_SIZE option and " | ||
4839 | "MHD_USE_THREAD_PER_CONNECTION flag are specified.\n")); | ||
4840 | #endif | ||
4841 | return MHD_NO; | ||
4842 | } | ||
4825 | daemon->worker_pool_size = va_arg (ap, | 4843 | daemon->worker_pool_size = va_arg (ap, |
4826 | unsigned int); | 4844 | unsigned int); |
4827 | if (0 == daemon->worker_pool_size) | 4845 | if (0 == daemon->worker_pool_size) |