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

Function session_start

modules/http2/h2_proxy_session.c:795–823  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

793}
794
795static apr_status_t session_start(h2_proxy_session *session)
796{
797 nghttp2_settings_entry settings[2];
798 int rv, add_conn_window;
799 apr_socket_t *s;
800
801 s = ap_get_conn_socket(session->c);
802#if !defined(WIN32) && !defined(NETWARE)
803 if (s) {
804 ap_sock_disable_nagle(s);
805 }
806#endif
807
808 settings[0].settings_id = NGHTTP2_SETTINGS_ENABLE_PUSH;
809 settings[0].value = 0;
810 settings[1].settings_id = NGHTTP2_SETTINGS_INITIAL_WINDOW_SIZE;
811 settings[1].value = (1 << session->window_bits_stream) - 1;
812
813 rv = nghttp2_submit_settings(session->ngh2, NGHTTP2_FLAG_NONE, settings,
814 H2_ALEN(settings));
815
816 /* If the connection window is larger than our default, trigger a WINDOW_UPDATE */
817 add_conn_window = ((1 << session->window_bits_connection) - 1 -
818 NGHTTP2_INITIAL_CONNECTION_WINDOW_SIZE);
819 if (!rv && add_conn_window != 0) {
820 rv = nghttp2_submit_window_update(session->ngh2, NGHTTP2_FLAG_NONE, 0, add_conn_window);
821 }
822 return rv? APR_EGENERAL : APR_SUCCESS;
823}
824
825static apr_status_t open_stream(h2_proxy_session *session, const char *url,
826 request_rec *r, int standalone,

Callers 1

h2_proxy_session_processFunction · 0.85

Calls 2

ap_get_conn_socketFunction · 0.85
ap_sock_disable_nagleFunction · 0.85

Tested by

no test coverage detected