httpd-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Jeff Trawick <>
Subject Re: How to filter headers
Date Thu, 24 Aug 2000 15:39:07 GMT writes:

> One of the questions that was never answered during the filter design
> meeting, is how to deal with headers.  There are multiple options, and I
> will try to outline them here.  We need to decide on this relatively soon,
> because it impacts writing many filters.
> 3) ap_pass_brigade converts the headers to a bucket (again either header
> or heap type), and that is passed down the filter stack.  Filters make
> their own decisions based on the header bucket
> Pros:  This makes the most sense logically, and allows for the most
> flexability
> Cons:  I can't think of any.
> Obviously I like option #3.  This is likely to not be the only options,
> but they are the easy ones, and the first three I could think of.  If
> there are other options, please speak up.  We also need to talk about what
> the header bucket will look like.  I would personally like it to be a
> table of headers much like the current request_rec headers_out are.  This
> is a simple API that people already know, and it does work.  Using a text
> string means that module writers need to parse the string themselves.

How is ap_pass_brigade() going to know to represent the headers in a
bucket?  Because this is the first time ap_pass_brigade() was called
for the request?  So the work done by ap_send_http_headers() will be
instigated by ap_pass_brigade() on the first time that it is called
for a given request?

Filters should be able to muck with the headers in table form, as they
are in the request_rec.  But the bucket representing the headers
wouldn't have a normal read() operation.  Filters will need to
special-case the header bucket type.

Trying to get the hang of this stuff,

Jeff Trawick | | PGP public key at web site:
          Born in Roswell... married an alien...

View raw message