On 04/28/2016 10:19 AM, Ruediger Pluem wrote:
> 
> 
> On 04/27/2016 08:41 PM, wr...@apache.org wrote:
>> Author: wrowe
>> Date: Wed Apr 27 18:41:49 2016
>> New Revision: 1741310
>>
>> URL: http://svn.apache.org/viewvc?rev=1741310&view=rev
>> Log:
>>
>>   Ensure http2 follows http in the meaning of
>>   status WRITE (meaning 'in the request processing
>>   phase' even if still consuming the request body,
>>   not literally in a 'now writing' state).
>>
>>   Ensure a number of MPMs and the h2 connection io
>>   no longer clobber the request status line during
>>   state-only changes.  While at it, clean up some
>>   very ugly formatting and unnecessary decoration,
>>   and avoid the wordy _from_conn() flavor when we
>>   are not passing a connection_rec.
>>
>>   Ensure the useragent_ip is only used in the case
>>   where it has been initialized, fall back on the
>>   connection's remote_ip if the status is accidently
>>   updated from an uninitialized request_rec.
>>
>>
>> Modified:
>>     httpd/httpd/trunk/modules/http2/h2_conn_io.c
>>     httpd/httpd/trunk/modules/http2/h2_task.c
>>     httpd/httpd/trunk/server/core.c
>>     httpd/httpd/trunk/server/mpm/event/event.c
>>     httpd/httpd/trunk/server/mpm/motorz/motorz.c
>>     httpd/httpd/trunk/server/mpm/simple/simple_io.c
>>     httpd/httpd/trunk/server/mpm/winnt/child.c
>>     httpd/httpd/trunk/server/mpm/worker/worker.c
>>     httpd/httpd/trunk/server/scoreboard.c
>>
> 
>> Modified: httpd/httpd/trunk/server/scoreboard.c
>> URL: 
>> http://svn.apache.org/viewvc/httpd/httpd/trunk/server/scoreboard.c?rev=1741310&r1=1741309&r2=1741310&view=diff
>> ==============================================================================
>> --- httpd/httpd/trunk/server/scoreboard.c (original)
>> +++ httpd/httpd/trunk/server/scoreboard.c Wed Apr 27 18:41:49 2016
>> @@ -501,7 +501,7 @@ static int update_child_status_internal(
>>              copy_request(ws->request, sizeof(ws->request), r);
>>          }
>>  
>> -        if (r) {
>> +        if (r && r->useragent_ip) {
>>              if (!(val = ap_get_useragent_host(r, REMOTE_NOLOOKUP, NULL)))
>>                  apr_cpystrn(ws->client, r->useragent_ip, 
>> sizeof(ws->client));
> 
> Hm, wouldn't it be better to just encapsulate the above line in an if 
> (r->useragent_ip)
> or do we already know that ap_get_useragent_host(r, REMOTE_NOLOOKUP, NULL) 
> cannot deliver
> something meaningful if r->useragent_ip == NULL?
> 

Comments?

Regards

RĂ¼diger

Reply via email to