aboutsummaryrefslogtreecommitdiff
path: root/src/microhttpd/daemon.c
diff options
context:
space:
mode:
authorEvgeny Grin (Karlson2k) <k2k@narod.ru>2016-11-27 23:15:49 +0300
committerEvgeny Grin (Karlson2k) <k2k@narod.ru>2016-12-01 17:42:17 +0300
commit7f9b98e25631731afd8b853b9f0163dc793a0a57 (patch)
treeef81bbcf2830557346119d7d766073b1f8d2dbe0 /src/microhttpd/daemon.c
parent5bbf69f67d4d1c386d7ec4cd0b359f038a73fee2 (diff)
downloadlibmicrohttpd-7f9b98e25631731afd8b853b9f0163dc793a0a57.tar.gz
libmicrohttpd-7f9b98e25631731afd8b853b9f0163dc793a0a57.zip
Fixed thread safety with responses with same file FD,
added enum value MHD_FEATURE_RESPONSES_SHARED_FD
Diffstat (limited to 'src/microhttpd/daemon.c')
-rw-r--r--src/microhttpd/daemon.c12
1 files changed, 11 insertions, 1 deletions
diff --git a/src/microhttpd/daemon.c b/src/microhttpd/daemon.c
index 1b0a42bb..97640ba7 100644
--- a/src/microhttpd/daemon.c
+++ b/src/microhttpd/daemon.c
@@ -6018,7 +6018,11 @@ MHD_is_feature_supported(enum MHD_FEATURE feature)
6018 return MHD_NO; 6018 return MHD_NO;
6019#endif /* !HTTPS_SUPPORT || GNUTLS_VERSION_NUMBER < 0x030111 */ 6019#endif /* !HTTPS_SUPPORT || GNUTLS_VERSION_NUMBER < 0x030111 */
6020 case MHD_FEATURE_LARGE_FILE: 6020 case MHD_FEATURE_LARGE_FILE:
6021#if defined(HAVE___LSEEKI64) || defined(HAVE_LSEEK64) 6021#if defined(HAVE_PREAD64) || defined(_WIN32)
6022 return MHD_YES;
6023#elif defined(HAVE_PREAD)
6024 return (sizeof(uint64_t) > sizeof(off_t)) ? MHD_NO : MHD_YES;
6025#elif defined(HAVE_LSEEK64)
6022 return MHD_YES; 6026 return MHD_YES;
6023#else 6027#else
6024 return (sizeof(uint64_t) > sizeof(off_t)) ? MHD_NO : MHD_YES; 6028 return (sizeof(uint64_t) > sizeof(off_t)) ? MHD_NO : MHD_YES;
@@ -6035,6 +6039,12 @@ MHD_is_feature_supported(enum MHD_FEATURE feature)
6035#else 6039#else
6036 return MHD_NO; 6040 return MHD_NO;
6037#endif 6041#endif
6042 case MHD_FEATURE_RESPONSES_SHARED_FD:
6043#if defined(HAVE_PREAD64) || defined(HAVE_PREAD) || defined(_WIN32)
6044 return MHD_YES;
6045#else
6046 return MHD_NO;
6047#endif
6038 } 6048 }
6039 return MHD_NO; 6049 return MHD_NO;
6040} 6050}