httpd-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Graham Leggett <minf...@sharp.fm>
Subject Re: svn commit: r1055250 - in /httpd/httpd/trunk: CHANGES modules/proxy/mod_proxy_http.c modules/proxy/proxy_util.c
Date Wed, 05 Jan 2011 09:29:39 GMT
On 05 Jan 2011, at 9:43 AM, Ruediger Pluem wrote:

> What about the comment in mod_proxy.h about the r element of  
> proxy_conn_rec?
>
> /* Request record of the frontend request
> * which the backend currently answers. */
>
> Doesn't this comment need to be adjusted now?

It does - I've fixed it in r1055367.

>> -            rp->headers_in = apr_table_copy(r->pool, r- 
>> >headers_out);
>> +            backend->r->headers_in = apr_table_copy(backend->r- 
>> >pool, r->headers_out);
>
> Doesn't that mean that we will get entries in backend->r->headers  
> that have been allocated
> from r->pool instead of backend->r->pool?

Hmmm... it does yes, I think we need an apr_table_clone here.

>>             /*
>>              * Restore Transfer-Encoding header from response if we  
>> saved
>>              * one before and there is none left. We need it for the
>>              * ap_http_filter. See above.
>>              */
>> -            if (te && !apr_table_get(rp->headers_in, "Transfer- 
>> Encoding")) {
>> -                apr_table_add(rp->headers_in, "Transfer-Encoding",  
>> te);
>> +            if (te && !apr_table_get(backend->r->headers_in,  
>> "Transfer-Encoding")) {
>> +                apr_table_add(backend->r->headers_in, "Transfer- 
>> Encoding", te);
>
> Doesn't that mean that we will get entries in backend->r->headers  
> that have been allocated
> from r->pool instead of backend->r->pool? te is an element from r- 
> >headers_out.

In this case we shouldn't, as apr_table_add() makes a copy of te from  
backend->r->pool. If we'd used apr_table_addn(), then it would have  
been yes.

Regards,
Graham
--


Mime
View raw message