mod_proxy_http2.c

Checkout Tools
  • last updated 2 hours ago
Constraints
Constraints: committers
 
Constraints: files
Constraints: dates
mod_proxy_http: forward 100-continue, and minimize race conditions when

reusing backend connections. PR 60330.

+1: ylavic, icing, jim

ylavic: plus http://svn.apache.org/r1856036 (opt-out)

2.4.x patch: http://people.apache.org/~ylavic/patches/httpd-2.4.x-forward_100_continue-v6.patch

+1: ylavic, jim, minfrin

  1. … 10 more files in changeset.
Merge r1859371, r1859422 from trunk:

mod_proxy/ssl: Proxy SSL client certificate

configuration and other proxy SSL configurations

broken inside <Proxy> context.

PR 63430

Triggered by r1855646+r1855748.

Patch from rpluem (proxy) and ylavic (ssl).

Follow up to r1859371: extend to other ap_proxy_connection_create[_ex]() users.

This function now now handles SSL reuse as well as the "proxy-request-hostname"

note (SNI), so let's also call it unconditionnaly in all proxy modules.

On the mod_ssl side, since this note has the lifetime of the connection, don't

reset/unset it during handshake (ssl_io_filter_handshake).

Submitted by: rjung, ylavic

Reviewed by: rjung, rpluem, ylavic

  1. … 10 more files in changeset.
Merge r1818726 from trunk:

mod_proxy: allow SSLProxyCheckPeer* usage for all proxy modules.

PR 61857.

Proposed by: Markus Gausling <markusgausling googlemail.com>

Reviewed by: ylavic, rjung, rpluem

  1. … 4 more files in changeset.
Merge of 1849296,1852038,1852101,1852339,1853171,1853967,1854365,1854963,1854964,1855295,1855411 from trunk:

*) mod_http2: when SSL renegotiation is inhibited and a 403 ErrorDocument is

in play, the proper HTTP/2 stream reset did not trigger with H2_ERR_HTTP_1_1_REQUIRED.

Fixed. [Michael Kaufmann]

*) mod_http2: new configuration directive: `H2Padding numbits` to control

padding of HTTP/2 payload frames. 'numbits' is a number from 0-8,

controlling the range of padding bytes added to a frame. The actual number

added is chosen randomly per frame. This applies to HEADERS, DATA and PUSH_PROMISE

frames equally. The default continues to be 0, e.g. no padding. [Stefan Eissing]

*) mod_http2: ripping out all the h2_req_engine internal features now that mod_proxy_http2

has no more need for it. Optional functions are still declared but no longer implemented.

While previous mod_proxy_http2 will work with this, it is recommeneded to run the matching

versions of both modules. [Stefan Eissing]

*) mod_proxy_http2: changed mod_proxy_http2 implementation and fixed several bugs which

resolve PR63170. The proxy module does now a single h2 request on the (reused)

connection and returns. [Stefan Eissing]

*) mod_http2/mod_proxy_http2: proxy_http2 checks correct master connection aborted status

to trigger immediate shutdown of backend connections. This is now always signalled

by mod_http2 when the the session is being released.

proxy_http2 now only sends a PING frame to the backend when there is not already one

in flight. [Stefan Eissing]

*) mod_proxy_http2: fixed an issue where a proxy_http2 handler entered an infinite

loop when encountering certain errors on the backend connection.

See <https://bz.apache.org/bugzilla/show_bug.cgi?id=63170>. [Stefan Eissing]

*) mod_http2: Configuration directives H2Push and H2Upgrade can now be specified per

Location/Directory, e.g. disabling PUSH for a specific set of resources. [Stefan Eissing]

*) mod_http2: HEAD requests to some module such as mod_cgid caused the stream to

terminate improperly and cause a HTTP/2 PROTOCOL_ERROR.

Fixes <https://github.com/icing/mod_h2/issues/167>. [Michael Kaufmann]

  1. … 34 more files in changeset.
  1. … 30 more files in changeset.
On the 2.4.x branch:

Merged /httpd/httpd/trunk:r1821371,1822502-1822503,1822624

  1. … 54 more files in changeset.
docco fix... correct license/copyright info

  1. … 24 more files in changeset.
On the 2.4.x branch:

Merged /httpd/httpd/trunk:r1789740,1790102,1790113,1790284,1790754,1790826-1790827,1790842

  1. … 20 more files in changeset.
On the 2.4.x branch:

Merged /httpd/httpd/trunk:r1784571,1785672,1785683,1786512,1786575-1786576

mod_http2/mod_proxy_http2 backport

  1. … 17 more files in changeset.
On the 2.4.x branch:

merge of r1783683,1783693,1783756,1783759-1783760,1783762,1783912,1783996 from trunk

  1. … 8 more files in changeset.
Merge of r1769596,1769600,1770395,1770998 from trunk

mod_http2: PUSH triggers only on GET

mod_proxy_http2: 1xx responses not forwarded unconditionally on HTTP/1.x connections

  1. … 6 more files in changeset.
Merge of r1766857,1767128,1767180,1767181,1767553 from trunk

mod_http2/mod_proxy_http2 improvments as in CHANGES

  1. … 22 more files in changeset.
Merge of 1764243,1765318 from trunk:

mod_http2/mod_proxy_http2: 100-continue implementation, PING checks on aged backend connections

  1. … 16 more files in changeset.
Merge of r1764236 from trunk:

mod_proxy_http2: renaming duplicate symbol clash between h2_proxy_util and h2_util externals

  1. … 17 more files in changeset.
Merge of r1764005 from trunk:

mod_http2: reverting int->apr_uint32_t changes from 1.7.x

  1. … 24 more files in changeset.
mod_proxy_http2: detect TLS close notify on backend connection, patch by Yann Ylavic
Merge of r1749505, r1749676 from trunk:

mod_proxy_http2: fixed retry behaviour when proxy engine needs to retry its base request on a new connection

  1. … 3 more files in changeset.
Merge of r1747550 from trunk:

mod_proxy_http2 no longer shares objects with mod_http2

h2_casecmpstr eliminated, uses backported ap_cstr_casecmp*

  1. … 11 more files in changeset.
Merge of r1747735 from trunk:

mod_proxy_http2: properly care for HTTP2 flow control of the frontend

connection is HTTP/1.1. [Patch supplied by Evgeny Kotkov]

  1. … 5 more files in changeset.
mod_http2: backport of v1.5.6 plus mod_proxy_http2 dsp support
  1. … 31 more files in changeset.
Merge of 1742260,1742359,1742444,1742445,1742446,1742447,1742460,1743335,1743517,1743788 from trunk:

mod_http2/mod_proxy_http2 update with latest changes from trunk to 1.5.4.

Update of CMake and Netware makefiles.

  1. … 11 more files in changeset.
Merge r1729208, r1735668, r1735668, r1735931, r1735935, r1735942 from trunk:

let proxy handler forward ALPN protocol strings for ssl proxy connections

Remove leftover comment

Remove leftover comment

APLOGNO update for mod_proxy_http2

fix APLOGNO at wrong place, me stupid

h2_proxy_session: fill in missing APLOGNO()s.

Submitted by: icing, jailletc36, jailletc36, icing, icing, ylavic

Reviewed/backported by: jim

  1. … 5 more files in changeset.