MCPcopy Create free account
hub / github.com/apache/httpd / stream_do_responses

Function stream_do_responses

modules/http2/h2_stream.c:1761–1785  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

1759}
1760
1761static void stream_do_responses(h2_stream *stream)
1762{
1763 h2_session *session = stream->session;
1764 conn_rec *c1 = session->c1;
1765 apr_status_t rv;
1766
1767 ap_assert(!stream->response);
1768 ap_log_cerror(APLOG_MARK, APLOG_TRACE2, 0, c1,
1769 H2_STRM_MSG(stream, "do_response"));
1770 rv = buffer_output_receive(stream);
1771 ap_log_cerror(APLOG_MARK, APLOG_TRACE1, rv, c1,
1772 H2_SSSN_STRM_MSG(session, stream->id,
1773 "buffer_output_received2"));
1774 if (APR_SUCCESS != rv && APR_EAGAIN != rv) {
1775 h2_stream_rst(stream, NGHTTP2_PROTOCOL_ERROR);
1776 }
1777 else {
1778 /* process all headers sitting at the buffer head. */
1779 do {
1780 rv = stream_do_response(stream);
1781 } while (APR_SUCCESS == rv
1782 && !stream->rst_error
1783 && !stream->response);
1784 }
1785}
1786
1787void h2_stream_on_output_change(h2_stream *stream)
1788{

Callers 1

Calls 2

buffer_output_receiveFunction · 0.85
h2_stream_rstFunction · 0.85

Tested by

no test coverage detected