]> git.ipfire.org Git - thirdparty/apache/httpd.git/commit
Merge r660726 from trunk:
authorJim Jagielski <jim@apache.org>
Wed, 28 May 2008 12:58:29 +0000 (12:58 +0000)
committerJim Jagielski <jim@apache.org>
Wed, 28 May 2008 12:58:29 +0000 (12:58 +0000)
commita101104c2f49241f25c1316b0c9e7d1a8681b806
tree2af1c433b323eaa9456e55b333d466f131ff1eea
parent50c06bf7610b5242b1d1278fcc0b18dd811c4e20
Merge r660726 from trunk:

*  mod_proxy_http.c
   Ensure that the EOC bucket is inserted BEFORE an EOS bucket in bb as
   some resource filters like mod_deflate pass everything up to the EOS
   down the chain immediately and sent the remainder of the brigade later
   (or even never). But in this case the ap_http_header_filter does not
   get out of our way soon enough.

   http_filters.c
   Remove all data buckets that are in a brigade after an EOC bucket
   was seen, as an EOC bucket tells us that no (further) resource
   and protocol data should go out to the client. OTOH meta buckets
   are still welcome as they might trigger needed actions down in
   the chain (e.g. in network filters like SSL).
   Remark 1: It is needed to dump ALL data buckets in the brigade
             since an filter in between might have inserted data
             buckets BEFORE the EOC bucket sent by the original
             sender and we do NOT want this data to be sent.
   Remark 2: Dumping all data buckets here does not necessarily mean
             that no further data is send to the client as:
             1. Network filters like SSL can still be triggered via
                meta buckets to talk with the client e.g. for a
                clean shutdown.
             2. There could be still data that was buffered before
                down in the chain that gets flushed by a FLUSH or an
                EOS bucket.

PR: 37770

Submitted by: rpluem
Reviewed by: jim

git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/branches/2.2.x@660936 13f79535-47bb-0310-9956-ffa450edef68
STATUS
modules/http/http_filters.c
modules/proxy/mod_proxy_http.c