stream_funcs.c: refactoring

This commit is contained in:
Evgeny Grin (Karlson2k)
2024-09-30 03:26:16 +02:00
parent 7889ab0ec1
commit 8fb88663fe
+22 -19
View File
@@ -806,7 +806,7 @@ mhd_conn_start_closing (struct MHD_Connection *restrict c,
#ifdef MHD_UPGRADE_SUPPORT
if (mhd_CONN_CLOSE_UPGRADE == reason)
{
c->state = MHD_CONNECTION_UPGRADING;
mhd_assert (MHD_CONNECTION_UPGRADING == c->state);
c->event_loop_info = MHD_EVENT_LOOP_INFO_UPGRADED;
}
else
@@ -883,6 +883,24 @@ mhd_conn_pre_clean_part1 (struct MHD_Connection *restrict c)
mhd_stream_call_dcc_cleanup_if_needed (c);
if (NULL != c->rq.cntn.lbuf.data)
mhd_daemon_free_lbuf (c->daemon, &(c->rq.cntn.lbuf));
#ifdef MHD_USE_EPOLL
if (mhd_POLL_TYPE_EPOLL == c->daemon->events.poll_type)
{
struct epoll_event event;
event.events = 0;
event.data.ptr = NULL;
if (0 != epoll_ctl (c->daemon->events.data.epoll.e_fd,
EPOLL_CTL_DEL,
c->socket_fd,
&event))
{
mhd_LOG_MSG (c->daemon, MHD_SC_EPOLL_CTL_REMOVE_FAILED,
"Failed to remove connection socket from epoll.");
}
}
#endif /* MHD_USE_EPOLL */
}
@@ -895,6 +913,9 @@ mhd_conn_pre_clean (struct MHD_Connection *restrict c)
mhd_assert (c->dbg.closing_started);
mhd_assert (! c->dbg.pre_cleaned);
#ifdef MHD_UPGRADE_SUPPORT
if (NULL == c->upgr.c)
#endif
mhd_conn_pre_clean_part1 (c);
if (NULL != c->rp.resp_iov.iov)
@@ -918,24 +939,6 @@ mhd_conn_pre_clean (struct MHD_Connection *restrict c)
mhd_pool_destroy (c->pool);
c->pool = NULL;
#ifdef MHD_USE_EPOLL
if (mhd_POLL_TYPE_EPOLL == c->daemon->events.poll_type)
{
struct epoll_event event;
event.events = 0;
event.data.ptr = NULL;
if (0 != epoll_ctl (c->daemon->events.data.epoll.e_fd,
EPOLL_CTL_DEL,
c->socket_fd,
&event))
{
mhd_LOG_MSG (c->daemon, MHD_SC_EPOLL_CTL_REMOVE_FAILED,
"Failed to remove connection socket from epoll.");
}
}
#endif /* MHD_USE_EPOLL */
c->state = MHD_CONNECTION_CLOSED;
#ifndef NDEBUG
c->dbg.pre_cleaned = true;