However, the API is not going to make this trivial to fix.
 
ap_get_remote_host is connection-based.  And that is what mod_authz_host
is currently relying upon.
 
It seems that there needs to be a way for mod_remoteip to override the 
existing behavior, perhaps ap_set_remote_host(), that will cache the
request-based on for the lifetime of the request pool.  In the request
pool cleanup, ap_set_remote_host(c, NULL) would clear that overridden
request-based host, popping the value back to the cached c-> fields.
 
There is also the issue of the timing of setting the scoreboard record.
All three issues are intertwined.
 
 
--------- Original Message --------- Subject: Re: mod_status: Apache 2.4 
incorrect IP (proxy, not useragent_ip) on server-status page
From: "Jim Jagielski" <[email protected]>
Date: 9/11/14 9:46 am
To: [email protected]

Yeah, the more I think about it, ap_get_remote_host() is
 currently broken wrt how it handles useragent_ip and client_ip.
 
 Will likely try to patch this on trunk sometime today...
 
 On Sep 11, 2014, at 9:35 AM, Martynas Bendorius <[email protected]> wrote:
 
 > Yes, we may re-phrase it like that, if we'd like to fix it in apache source 
 > (and not documentation) :) Currently ap_get_remote_host in server/core.c 
 > doesn't return useragent_ip, and instead of it we get conn->client_ip.
 > 
 > Best regards,
 > Martynas Bendorius
 > 
 > On 9/11/14 4:21 PM, Jim Jagielski wrote:
 >> isn't the question rather "What should ap_get_remote_host()
 >> return?"?
 >> 
 >> On Sep 11, 2014, at 8:17 AM, Martynas Bendorius <[email protected]> 
 >> wrote:
 >> 
 >>> Hello,
 >>> 
 >>> Would it be possible to change the documentation of mod_remoteip for 2.4 
 >>> (http://httpd.apache.org/docs/2.4/mod/mod_remoteip.html), and get "is 
 >>> reported by mod_status" removed from the page? As it leds Apache customers 
 >>> to believe that it will report a real (useragent) IP instead of a proxy 
 >>> one in server-status page. useragent_ip is not even available in 
 >>> scoreboard, which is used by mod_status, so it's not available for 
 >>> mod_status.
 >>> 
 >>> This has been already discussed here: 
 >>> https://issues.apache.org/bugzilla/show_bug.cgi?id=55886
 >>> 
 >>> Thank you!
 >>> 
 >>> Best regards,
 >>> Martynas Bendorius
 >>> 
 >> 
 >

Reply via email to