Checkout Tools
  • last updated 4 hours ago
Constraints: committers
Constraints: files
Constraints: dates
*) mod_setenvif: We can have expressions that become true if a regex pattern

in the expression does NOT match. In this case val is NULL

and we should just set the value for the environment variable

like in the pattern case.

+1: jailletc36, jim, minfrin

  1. … 3 more files in changeset.
Merge r1729930, r1729931 from trunk:

hostname: Test and log useragent_host per-request across various modules,

including the scoreboard, expression and rewrite engines, setenvif,

authz_host, access_compat, custom logging, ssl and REMOTE_HOST variables.

PR55348 [William Rowe]

This is the complete change set which applies cleanly to 2.4.x as well,

the server/scoreboard.c will follow, which does not apply due to drift.

A rather ugly patch since the code was refactored recently to exclude

the simple patch for 2.4.x, illustrated below.

Completes the changeset r1729930 and resolves all 2.4.19-dev corrections,

but other 2.5.0-dev specific changes may still be needed on trunk.

--- server/scoreboard.c (revision 1729907)

+++ server/scoreboard.c (working copy)

@@ -491,9 +491,8 @@

ws->conn_bytes = 0;


if (r) {

- const char *client = ap_get_remote_host(c, r->per_dir_config,


- if (!client || !strcmp(client, c->client_ip)) {

+ const char *client;

+ if (!(client = ap_get_useragent_host(r, REMOTE_NOLOOKUP, NULL))) {

apr_cpystrn(ws->client, r->useragent_ip, sizeof(ws->client));


else {

Submitted by: wrowe

Reviewed/backported by: jim

  1. … 12 more files in changeset.
Backport r1690137.

Doc and comment fix only

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

* Fix null pointer dereference in case SetEnvif and SetEnvIfExpr are used


PR: 54881

Submitted by: rpluem

Reviewed by: rpluem, covener, humbedooh

  1. … 3 more files in changeset.
mod_setenvif: Compile the regex used by is_header_regex() only once

during startup This should save some memory, especially with .htaccess

Backport of r1343099.

Submitted by: sf

Reviewed by: rjung, jim

Backported by: rjung

  1. … 3 more files in changeset.

Further clarify the naming of the entity that originates the request by

calling that entity a useragent instead of a client.

Further clarify the naming of the entity that directly connects to us by

calling that entity a client instead of a peer.

  1. … 26 more files in changeset.
Backport r1209766, r1210252, r1210284:

Add lots of unique tags to error log messages

ssl_util.c: Downgrade some dynamic locking messages from level DEBUG

to TRACE1-3

  1. … 164 more files in changeset.

Introduce a per request version of the remote IP address, which can be

optionally modified by a module when the effective IP of the client

is not the same as the real IP of the client (such as a load balancer).

Introduce a per connection "peer_ip" and a per request "client_ip" to

distinguish between the raw IP address of the connection and the effective

IP address of the request.

  1. … 31 more files in changeset.