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

Changeset 1824251 is being indexed.

Documentation rebuild
Backported in r1824248.
Merge r1776575, r1776578, r1776624, r1776627, r1776674, r1776734, r1776740, r1778268, r1780725, r1781030, r1781031, r1781701, r1788674, r1789800, r1790169, r1790457, r1790691, r1806985, r1812332, r1818279 from trunk:

Merge new PROXY protocol code into mod_remoteip

Fix typo in mod_remoteip's doc

Shorten RemoteIPProxyProtocolEnable to RemoteIPProxyProtocol and correct references in docs

Move attribution for mod_remoteip RemoteIPProxyProtocol from file to CHANGES

On the trunk:

* mod_remoteip: added cast to fix clang compiler error

Reinsert attribution to mod_remoteip.c for PROXY protocol

* Silence compiler warning

Set all read buckets aside in case we need to restore all during optional header processing

* modules/metadata/mod_remoteip.c: Fix GCC strict-aliasing warning

by moving deference of header array via a different pointer type

("type-punning") out of line.

* modules/metadata/mod_remoteip.c (register_hooks,

remoteip_hook_pre_connection): Reference the filter by handle rather

than name (avoiding tree lookup by name on use).

Change tactic for PROXY processing in Optional case

Finally include feedback from Ruediger Pluem. Add slave "backoff" verified by Sander Hoentjen

Update PROXY handling by removing Optional processing

Rename RemoteIPProxyProtocolDisableHosts to RemoteIPProxyProtocolExceptions

Fix directive name in


Use cmd->cmd->name instead to be future proof.

XML update plus typo in mod_remoteip.xml.

PROXY protocol proposal corrections

Fix format pattern (%lu => %APR_SIZE_T_FMT).

Detected by maintainer mode compilation and GCC error:


In function 'remoteip_input_filter':


error: format '%lu' expects argument of type

'long unsigned int', but argument 8 has type

'apr_size_t {aka unsigned int}' [-Werror=format=]

APR-ize uint types

Submitted by: druggeri, elukey, druggeri, druggeri, druggeri, icing, druggeri, rpluem, druggeri, jorton, jorton, druggeri, druggeri, druggeri, druggeri, jailletc36, lgentis, mrumph, rjung, jim

Reviewed by: druggeri, jim, minfrin

fixing missing rename of SSLPolicy section
Revert r1824221: wrong backport.
propose T&R

Merge r1745863, r1745864 from trunk:

Fix segfault with logresolve -c and IPv6

Due to a logic error, there could be a NULL pointer dereference.

Fix comment typo

Submitted by: sf

Reviewed by: jailletc36, minfrin, jim


Backport vote

mod_remoteip: Add PROXY protocol support

trunk patch: (doc fix) (shortened name + doc fix) (attribution moved to CHANGES) (attribution updated in mod_remotip.c) (fix compiler warning) (set buckets aside) (fix strict GCC warning) (reference the filter by handle) (rework optional processing case) (final edge cases/ignore slave conns) (remove optional processing) (rename "exception" directive) (Update directive name in err message)

2.4 convenience patch (includes CHANGES):

+1: druggeri, jim, minfrin

[Reverted by r1824246]

Make an explicit patch.

Add 2.4.x patch for backport.

    • ?
Follow up to r1824187: record mergeinfo(s).
Follow up to r1824180: record mergeinfo(s).
v3 of RemoteIPProxyProtocol.2.4 accepted.

Vote, and note we need an extra backport.

  1. … 16 more files in changeset.
Vote, promote.

    • ?
Vote, promote.


Merge r1822509, r1822511, r1823412, r1823415, r1823416, r1823564, r1823572, r1823575 from trunk:

mod_slotmem_shm: Rework SHM reuse/deletion.

To fix races with graceful restarts (PR 62044).

This commit does:

1/ use a constant file name for all systems (no generation suffix which

makes a new SHM to be created for each restart, losing previous data)

2/ maintain the list of the created SHMs accross restarts (ap_pglobal list)

3/ not unlink the files on restart anymore (otherwise we can't reuse them)

4/ not attach existing SHMs in slotmem_create() anymore (not suitable since

those are necessarily crash remainders)

5/ add type/sizes consistency check for persisted slots on restoration

6/ unlink the files only on stop/exit or before creating them (crash recovery)

We could possibly avoid 6/ (since we don't need to re-open files now) if we

remove the file just after the SHM is created. This would at least work for

systems with "unlink semantic" (i.e. unlink succeeds even if some descriptors

are opened, the "real" thing happening when the last one desciptor closed), but

this wouldn't work for other systems so I kept the code generic for now.

mod_slotmem_shm: follow up tp r1822509.

Please buildbot (and incidentally users of older APR) by using

apr_shm_remove() instead of the new(er) apr_shm_delete().

mod_slotmem_shm: follow up tp r1822509.

Check SHM sizes when reused, reload may have changed the needs.

mod_slotmem_shm: follow up tp r1822509.

Do not bind attached slotmems to the global list, they should be detached with

the given pool (pchild) is cleaned up, but not destroyed/removed (doubly) with


mod_slotmem_shm: follow up tp r1822509.

Complete layout of SHM and persited file (ascii art).

Simplify an "if" condition, no functional change.

mod_proxy_balancer: follow up tp r1822509.

Rework server_rec ID so that it doesn't change on restart (or stop/start)

unless it's Host(s)/IP(s):port(s), ServerName and/or ServerAlias(es) changed.

The goal being to reuse SHMs (and persisted files) names as much as possible,

with minimal bindings to configuration changes (as far as mod_proxy_balancer

is concerned). So if the ServerName and first Host/IP:port are unique we use

that first, otherwise the ServerAlias(es) and other Host(s)/IP(s):port(s) are

also taken into account, and finally if that's still not enough the server

index is also used (pathological case handled for correctness with regard to

the underlying mod_slotmem_shm's reuse code).

mod_slotmem_shm: follow up tp r1822509.

Fishy "unlink semantic" (description) does not apply anymore.

Follow up to r1822509: amend CHANGES entry.

Submitted by: ylavic

Reviewed by: ylavic, jim, minfrin

Vote and promote.



mod_proxy: Provide an RFC1035 compliant version of the hostname in the

proxy_worker_shared structure. PR62085

Fixes quoting as per

Credit: Hendrik Harms <>