From 3f46eb75f5a3618944aeffa7f5d383083e9a5c38 Mon Sep 17 00:00:00 2001 From: Daniel Ruggeri Date: Wed, 18 Apr 2018 22:36:14 +0000 Subject: [PATCH] *) mod_remoteip: make proxy-protocol work on HTTP/2 connections. trunk patch: http://svn.apache.org/r1827196 2.4.x patch: svn merge -c 1827196 ^/httpd/httpd/trunk . +1: icing, ylavic, jim git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/branches/2.4.x@1829486 13f79535-47bb-0310-9956-ffa450edef68 --- CHANGES | 4 ++++ STATUS | 5 ----- modules/metadata/mod_remoteip.c | 7 ++++++- 3 files changed, 10 insertions(+), 6 deletions(-) diff --git a/CHANGES b/CHANGES index 5ac188f94e..791f4b9516 100644 --- a/CHANGES +++ b/CHANGES @@ -1,6 +1,10 @@ -*- coding: utf-8 -*- Changes with Apache 2.4.34 + *) mod_remoteip: make proxy-protocol work on slave connections, e.g. in HTTP/2 + requests. See also https://github.com/roadrunner2/mod-proxy-protocol/issues/6 + [Stefan Eissing] + *) mod_ssl: Fix merging of proxy SSL context outside sections, regression introduced in 2.4.30. PR 62232. [Rainer Jung, Yann Ylavic] diff --git a/STATUS b/STATUS index 1673530dc1..16cd5c2af1 100644 --- a/STATUS +++ b/STATUS @@ -138,11 +138,6 @@ PATCHES PROPOSED TO BACKPORT FROM TRUNK: 'no_ocsp_for_cert_ok', which is undocumented. Adding some new paramters also deserves a CHANGES entry. - *) mod_remoteip: make proxy-protocol work on HTTP/2 connections. - trunk patch: http://svn.apache.org/r1827196 - 2.4.x patch: svn merge -c 1827196 ^/httpd/httpd/trunk . - +1: icing, ylavic, jim - *) core: Add , , trunk patch: http://svn.apache.org/r1769718 http://svn.apache.org/r1785943 diff --git a/modules/metadata/mod_remoteip.c b/modules/metadata/mod_remoteip.c index 4101b4ebdc..e67ff3655f 100644 --- a/modules/metadata/mod_remoteip.c +++ b/modules/metadata/mod_remoteip.c @@ -887,8 +887,13 @@ static int remoteip_hook_pre_connection(conn_rec *c, void *csd) remoteip_conn_config_t *conn_conf; int i; - /* Do not attempt to manipulate slave connections */ + /* Establish master config in slave connections, so that request processing + * finds it. */ if (c->master != NULL) { + conn_conf = ap_get_module_config(c->master->conn_config, &remoteip_module); + if (conn_conf) { + ap_set_module_config(c->conn_config, &remoteip_module, conn_conf); + } return DECLINED; } -- 2.40.0