Checkout Tools
  • last updated 5 hours ago
Constraints: committers
Constraints: files
Constraints: dates

Changeset 1855431 is being indexed.

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 <>. [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 <>. [Michael Kaufmann]

  1. … 20 more files in changeset.
Vote, promote.
Update mod_reqtimeout 'handshake' compatibility version (r1855413 did it for 2.4.x already).
added r1855411 which reverts the unwanted revert of r1852989 to backport proposal of mod_http2

Re-integrated r1852989 into backport patch.

    • ?
Fix version docs compat note in backport.

Followup to 1855409.

CTR docs.

Reverting the unwanted revert of r1852989.

Merge r1853901, r1853906, r1853908, r1853929, r1853935, r1853967 from trunk:

mod_reqtimeout: factorize structs and code.

With a bit of macro magic, this is to avoid more code duplication when adding

new stages (next commit will add TLS/handshake timeouts handling in addition to

existing header and body ones).

No functional change here.

mod_reqtimeout: Allow to configure (TLS-)handshake timeouts.

The timeouts apply between the process_connection and pre_read_request hooks.

They are disabled by default for compatibily reasons.

mod_reqtimeout: follow up to r1853906: adjust hooks priorities comments.

mod_reqtimeout: follow up to r1853901: fix macro args.

mod_reqtimeout: follow up to r1853901: init stage name outside INIT_STAGE().

It helps both code readability where stages are initilized and potential

logging in the input filter (even if the stage is disabled).

mod_http2: fix for latest mod_reqtimeout change re handshake timeouts

Submitted by: ylavic, icing

Reviewed by: ylavic, icing, jim

Merge r1853874, r1853938 from trunk:

mod_cache_socache: avoid pool to heap reallocation.

Below some threshold, the previous code tried free (sub-)pooled memory ASAP by

moving small buffers (< capacity / 2) to a heap bucket. But this is not really

an optimization because first it requires at some point to allocate more than

the configured capacity, and second since this happens during response handling

the pool is about to be destroyed soon anymay.

This commit simply keeps the data in the subpool and uses a pool bucket for the

output brigade to take care of the lifetime until it's consumed (or not).

Follow up to r1853874: CHANGES entry.

Submitted by: ylavic

Reviewed by: ylavic, icing, jim

Merge r1852038, r1852101 from trunk:

mod_http2: enable re-use of slave connections again.

mod_http2: fixed slave connection keepalives counter.

Submitted by: icing

Reviewed by: icing, ylavic, jim


Backport votes

Not yet :)
Merge of r1854004 from trunk:

*) http: Fix possible empty response with mod_ratelimit for HEAD requests.

vote, promote
Backported in r1855382.
Merge r1842010 from trunk:

* dav_stream_response processes data that has been allocated from the propdb

pool. Hence close the propdb *after* dav_stream_response which clears thei

probdb pool.

Submitted by: rpluem

Reviewed by: jailletc36, icing, ylavic

Backported in r1855380.
Merge r1855349 from trunk:

mod_ssl: AH10129 from ERR to DEBUG level.

No error here, just debug information.

Submitted by: ylavic

Reviewed by: ylavic, rpluem, jorton

Backported in r1855378.
Merge r1855306 from trunk:

MPMs unix: bind the bucket number of each child to its slot number

We need not remember each child's bucket number in SHM for restarts, for the

lifetime of the httpd main process the bucket number can be bound to the slot

number such that: bucket = slot % num_buckets.

This both simplifies the logic and helps children maintenance per bucket in

threaded MPMs, where previously perform_idle_server_maintenance() could create

or kill children processes for the buckets it was not in charge of.

Submitted by: ylavic

Reviewed by: ylavic, rpluem, jorton

Propose Yann's patch to fix a regression in mod_ratelimit
Vote, promote x2.
* Easy vote
fixing bugreport 63258 on the typo
fixing bugreport 63258 on the typo
Easy proposal.
mod_ssl: AH10129 from ERR to DEBUG level.

No error here, just debug information.

* Vote