diff options
Diffstat (limited to 'src/microhttpd/daemon.c')
-rw-r--r-- | src/microhttpd/daemon.c | 31 |
1 files changed, 31 insertions, 0 deletions
diff --git a/src/microhttpd/daemon.c b/src/microhttpd/daemon.c index f310e1c7..c403d02b 100644 --- a/src/microhttpd/daemon.c +++ b/src/microhttpd/daemon.c | |||
@@ -6250,10 +6250,41 @@ parse_options_va (struct MHD_Daemon *daemon, | |||
6250 | case MHD_OPTION_CONNECTION_MEMORY_LIMIT: | 6250 | case MHD_OPTION_CONNECTION_MEMORY_LIMIT: |
6251 | daemon->pool_size = va_arg (ap, | 6251 | daemon->pool_size = va_arg (ap, |
6252 | size_t); | 6252 | size_t); |
6253 | if (64 > daemon->pool_size) | ||
6254 | { | ||
6255 | #ifdef HAVE_MESSAGES | ||
6256 | MHD_DLOG (daemon, | ||
6257 | _ ("Warning: specified MHD_OPTION_CONNECTION_MEMORY_LIMIT " \ | ||
6258 | "value is too small and rounded up to 64.\n")); | ||
6259 | #endif /* HAVE_MESSAGES */ | ||
6260 | daemon->pool_size = 64; | ||
6261 | } | ||
6262 | if (daemon->pool_size / 4 < daemon->pool_increment) | ||
6263 | daemon->pool_increment = daemon->pool_size / 4; | ||
6253 | break; | 6264 | break; |
6254 | case MHD_OPTION_CONNECTION_MEMORY_INCREMENT: | 6265 | case MHD_OPTION_CONNECTION_MEMORY_INCREMENT: |
6255 | daemon->pool_increment = va_arg (ap, | 6266 | daemon->pool_increment = va_arg (ap, |
6256 | size_t); | 6267 | size_t); |
6268 | if (0 == daemon->pool_increment) | ||
6269 | { | ||
6270 | #ifdef HAVE_MESSAGES | ||
6271 | MHD_DLOG (daemon, | ||
6272 | _ ("The MHD_OPTION_CONNECTION_MEMORY_INCREMENT value " \ | ||
6273 | "cannot be zero.\n")); | ||
6274 | #endif /* HAVE_MESSAGES */ | ||
6275 | return MHD_NO; | ||
6276 | } | ||
6277 | if (daemon->pool_size / 4 < daemon->pool_increment) | ||
6278 | { | ||
6279 | #ifdef HAVE_MESSAGES | ||
6280 | MHD_DLOG (daemon, | ||
6281 | _ ("Warning: specified " \ | ||
6282 | "MHD_OPTION_CONNECTION_MEMORY_INCREMENT value is too " \ | ||
6283 | "large and rounded down to 1/4 of " \ | ||
6284 | "MHD_OPTION_CONNECTION_MEMORY_LIMIT.\n")); | ||
6285 | #endif /* HAVE_MESSAGES */ | ||
6286 | daemon->pool_increment = daemon->pool_size / 4; | ||
6287 | } | ||
6257 | break; | 6288 | break; |
6258 | case MHD_OPTION_CONNECTION_LIMIT: | 6289 | case MHD_OPTION_CONNECTION_LIMIT: |
6259 | daemon->connection_limit = va_arg (ap, | 6290 | daemon->connection_limit = va_arg (ap, |