httpd-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
Subject Re: FW: cvs commit: apache-2.0/src/main http_core.c http_protocol.chttp_request.c
Date Wed, 04 Oct 2000 17:29:44 GMT

> > ARGH!  You're right.  The only real way to solve this is to add another
> > hook just after creating request_rec.  It's the only clean way to solve
> > this.  If your CVS access is still messed up, let me know and I'll make
> > the change.
> Let's back up a second or three...
> Don't we need the write-to-the-network filter tied to the conn_rec
> instead of the request_rec?  Otherwise, we'll be using different
> instances of the write-to-the-network filter for different requests on
> the same connection.  That would seem to be a potential pain for SSL
> and for a core_filter that wants to buffer output across requests.
> What if installing core_filter is associated with initializing the
> conn_rec structure (perhaps in a hook called right after creating the
> conn_rec)...  
> . conn_rec needs an output filter list
> . when the request_rec is initialized for a new request it starts off
>   with the chain on the conn_rec
> . ap_add_filter() (which needs to be renamed to ap_add_output_filter()
>   anyway) would need to take the address of the list head
>   (&c->output_filters or &r->output_filters) to be modified
> What am I missing here?

Nothing.  I actually just had this conversation and was about to post
about it.  I would modify a few things though.

1)  Remove the output filters from the request_rec.  They may be request
oriented, but we only support one request at a time.
2)  When adding a filter, we provide a request_rec and a conn_rec.  Any
filter that does not have a request_rec is automatically connection
3)  At the end of a request, clear all filters from the conn_rec, except
the connection oriented ones.

I could code this today if people want me to.


Ryan Bloom               
406 29th St.
San Francisco, CA 94131

View raw message