diff options
Diffstat (limited to 'src/microhttpd/daemon.c')
-rw-r--r-- | src/microhttpd/daemon.c | 12 |
1 files changed, 11 insertions, 1 deletions
diff --git a/src/microhttpd/daemon.c b/src/microhttpd/daemon.c index 79e8ab70..780ba28e 100644 --- a/src/microhttpd/daemon.c +++ b/src/microhttpd/daemon.c | |||
@@ -2185,6 +2185,7 @@ MHD_run_from_select (struct MHD_Daemon *daemon, | |||
2185 | MHD_socket ds; | 2185 | MHD_socket ds; |
2186 | struct MHD_Connection *pos; | 2186 | struct MHD_Connection *pos; |
2187 | struct MHD_Connection *next; | 2187 | struct MHD_Connection *next; |
2188 | struct MHD_UpgradeResponseHandle *urh; | ||
2188 | unsigned int mask = MHD_USE_SUSPEND_RESUME | MHD_USE_EPOLL_INTERNALLY | | 2189 | unsigned int mask = MHD_USE_SUSPEND_RESUME | MHD_USE_EPOLL_INTERNALLY | |
2189 | MHD_USE_SELECT_INTERNALLY | MHD_USE_POLL_INTERNALLY | MHD_USE_THREAD_PER_CONNECTION; | 2190 | MHD_USE_SELECT_INTERNALLY | MHD_USE_POLL_INTERNALLY | MHD_USE_THREAD_PER_CONNECTION; |
2190 | 2191 | ||
@@ -2204,7 +2205,7 @@ MHD_run_from_select (struct MHD_Daemon *daemon, | |||
2204 | { | 2205 | { |
2205 | /* we're in epoll mode, the epoll FD stands for | 2206 | /* we're in epoll mode, the epoll FD stands for |
2206 | the entire event set! */ | 2207 | the entire event set! */ |
2207 | if (!MHD_SCKT_FD_FITS_FDSET_(daemon->epoll_fd, NULL)) | 2208 | if (! MHD_SCKT_FD_FITS_FDSET_(daemon->epoll_fd, NULL)) |
2208 | return MHD_NO; /* poll fd too big, fail hard */ | 2209 | return MHD_NO; /* poll fd too big, fail hard */ |
2209 | if (FD_ISSET (daemon->epoll_fd, read_fd_set)) | 2210 | if (FD_ISSET (daemon->epoll_fd, read_fd_set)) |
2210 | return MHD_run (daemon); | 2211 | return MHD_run (daemon); |
@@ -2233,6 +2234,15 @@ MHD_run_from_select (struct MHD_Daemon *daemon, | |||
2233 | MHD_NO); | 2234 | MHD_NO); |
2234 | } | 2235 | } |
2235 | } | 2236 | } |
2237 | |||
2238 | /* handle upgraded HTTPS connections */ | ||
2239 | #if HTTPS_SUPPORT | ||
2240 | for (urh = daemon->urh_head; NULL != urh; urh = urh->next) | ||
2241 | { | ||
2242 | // if ( (0 != (MHD_EPOLL_STATE_READ_READY & urh->celi_mhd)) && | ||
2243 | // (0 != (MHD_EPOLL_STATE_WRITE_READY & urh->celi_client)) ) | ||
2244 | } | ||
2245 | #endif | ||
2236 | MHD_cleanup_connections (daemon); | 2246 | MHD_cleanup_connections (daemon); |
2237 | return MHD_YES; | 2247 | return MHD_YES; |
2238 | } | 2248 | } |