size_t data_in_flight;
+ bool async_queued;
+
/*
* The statistical values below are for usage on server-side
* only. They are meant to detect clients that are taking too many
REQUIRE(VALID_HTTP2_SESSION(session));
+ session->async_queued = false;
+
if (session->handle != NULL &&
!isc__nmsocket_closing(session->handle->sock))
{
REQUIRE(VALID_HTTP2_SESSION(session));
if (session->handle == NULL ||
- isc__nmsocket_closing(session->handle->sock))
+ isc__nmsocket_closing(session->handle->sock) ||
+ session->async_queued)
{
return;
}
+ session->async_queued = true;
isc__nm_httpsession_attach(session, &tmpsess);
isc_async_run(session->handle->sock->worker->loop, http_do_bio_async_cb,
tmpsess);