libmicrohttpd

HTTP/1.x server C library (MHD 1.x, stable)
Log | Files | Refs | Submodules | README | LICENSE

commit faa231001dd07de27eb3600e91952f7a0037a68e
parent 924451b713b8a7bc84c742d7b82af24025c00812
Author: Evgeny Grin (Karlson2k) <k2k@narod.ru>
Date:   Tue, 11 Oct 2016 15:21:17 +0000

Renamed 'MHD_pipe_drain_' -> 'MHD_itc_clear_'

Diffstat:
Msrc/microhttpd/daemon.c | 12++++++------
Msrc/microhttpd/mhd_itc.h | 33++++++++++++++++++++-------------
2 files changed, 26 insertions(+), 19 deletions(-)

diff --git a/src/microhttpd/daemon.c b/src/microhttpd/daemon.c @@ -1416,7 +1416,7 @@ thread_main_handle_connection (void *data) if ( (! MHD_INVALID_PIPE_(daemon->itc)) && (FD_ISSET (MHD_itc_r_fd_ (daemon->itc), &rs)) ) - MHD_pipe_drain_ (daemon->itc); + MHD_itc_clear_ (daemon->itc); #endif if (MHD_NO == call_handlers (con, @@ -1487,7 +1487,7 @@ thread_main_handle_connection (void *data) /* drain signaling pipe before other processing */ if ( (! MHD_INVALID_PIPE_(daemon->itc)) && (0 != (p[1].revents & (POLLERR | POLLHUP | POLLIN))) ) - MHD_pipe_drain_ (daemon->itc); + MHD_itc_clear_ (daemon->itc); #endif if (MHD_NO == call_handlers (con, @@ -2707,7 +2707,7 @@ MHD_run_from_select (struct MHD_Daemon *daemon, if ( (! MHD_INVALID_PIPE_(daemon->itc)) && (FD_ISSET (MHD_itc_r_fd_ (daemon->itc), read_fd_set)) ) - MHD_pipe_drain_ (daemon->itc); + MHD_itc_clear_ (daemon->itc); /* Resuming external connections when using an extern mainloop */ if (MHD_USE_SUSPEND_RESUME == (daemon->options & mask)) @@ -3088,7 +3088,7 @@ MHD_poll_all (struct MHD_Daemon *daemon, new signals will be processed in next loop */ if ( (-1 != poll_pipe) && (0 != (p[poll_pipe].revents & POLLIN)) ) - MHD_pipe_drain_ (daemon->itc); + MHD_itc_clear_ (daemon->itc); /* handle shutdown */ if (MHD_YES == daemon->shutdown) @@ -3214,7 +3214,7 @@ MHD_poll_listen_socket (struct MHD_Daemon *daemon, } if ( (-1 != poll_pipe) && (0 != (p[poll_pipe].revents & POLLIN)) ) - MHD_pipe_drain_ (daemon->itc); + MHD_itc_clear_ (daemon->itc); /* handle shutdown */ if (MHD_YES == daemon->shutdown) @@ -3497,7 +3497,7 @@ MHD_epoll (struct MHD_Daemon *daemon, { /* It's OK to drain pipe here as all external conditions will be processed later. */ - MHD_pipe_drain_ (daemon->itc); + MHD_itc_clear_ (daemon->itc); continue; } if (daemon == events[i].data.ptr) diff --git a/src/microhttpd/mhd_itc.h b/src/microhttpd/mhd_itc.h @@ -90,12 +90,13 @@ static const uint64_t _MHD_itc_wr_data = 1; #define MHD_itc_w_fd_(itc) ((int)(itc)) /** - * drain data from real pipe + * Clear signaled state on @a itc + * @param itc the itc to clear */ -#define MHD_pipe_drain_(pip) do { \ - uint64_t tmp; \ - read (pip, &tmp, sizeof (tmp)); \ - } while (0) +#define MHD_itc_clear_(itc) \ + do { uint64_t __b; int __r; \ + __r = read((itc), &__b, sizeof(__b)); \ + (void)__r; } while(0) /** * Close any FDs of the pipe (non-W32) @@ -178,12 +179,13 @@ static const uint64_t _MHD_itc_wr_data = 1; #define MHD_itc_w_fd_(itc) ((itc).fd[1]) /** - * drain data from real pipe + * Clear signaled state on @a itc + * @param itc the itc to clear */ -#define MHD_pipe_drain_(pip) do { \ - long tmp; \ - while (0 < read((pip).fd[0], (void*)&tmp, sizeof (tmp))) ; \ - } while (0) +#define MHD_itc_clear_(itc) do \ + { long __b; \ + while(0 < read((itc).fd[0], &__b, sizeof(__b))) \ + {} } while(0) /** * Close any FDs of the pipe (non-W32) @@ -263,10 +265,15 @@ MHD_itc_nonblocking_ (MHD_itc_ itc); #define MHD_itc_w_fd_(itc) ((itc).sk[1]) /** - * Drain data from emulated pipe + * Clear signaled state on @a itc + * @param itc the itc to clear */ -#define MHD_pipe_drain_(pip) do { long tmp; while (0 < recv((pip).sk[0], (void*)&tmp, sizeof (tmp), 0)) ; } while (0) - +#define MHD_itc_clear_(itc) do \ + { long __b; \ + while(0 < recv((itc).sk[0], \ + (char*)&__b, \ + sizeof(__b), 0)) \ + {} } while(0) /** * Close emulated pipe FDs