httpd-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From sterling <sterl...@covalent.net>
Subject Re: cvs commit: httpd-2.0/modules/http http_protocol.c
Date Wed, 06 Jun 2001 06:05:56 GMT
On Tue, 5 Jun 2001 rbb@covalent.net wrote:

> On Tue, 5 Jun 2001, Greg Stein wrote:
> 
> > On Tue, Jun 05, 2001 at 04:24:03PM -0700, rbb@covalent.net wrote:
> > > On Wed, 6 Jun 2001, Graham Leggett wrote:
> > >
> > > > rbb@covalent.net wrote:
> > > >
> > > > > > Return to whom? Clearly if you remove the TLS filter, it won't
be the
> > > > > > user!
> > > > >
> > > > > Yep, right now TLS is broken.  I don't have a great idea for how
to fix it
> > > > > though.  :-(
> > > >
> > > > Have reset_filters() not remove the TLS filter if it is there?
> > >
> > > That is very difficult, because it builds a specific case that into the
> > > server that may not always make sense.
> >
> > Agreed.
> >
> > How about if we just remove the request filters, and leave all the
> > connection filters?
> >
> >     r->output_filters = c->output_filters;
> >     add()
> >     add()
> >     add()
> >
> >
> > Think that would suffice? Conceivably, a problem could still occur in a
> > connection filter, but remember: we're talking about *request* errors here.
> > I believe we can assume the connection is fine.
> 
> Only do 2 adds, and I can live with this.  We need to review the
> comments I made when I originally committed reset_filters, because I was
> seeing an annoying bug that I want to be sure we don't put back though.
> 

What greg suggests works great (and doesn't appear to re-introduce the bug
you speak of).... here's the patch:

Index: modules/http/http_protocol.c
===================================================================
RCS file: /home/cvspublic/httpd-2.0/modules/http/http_protocol.c,v
retrieving revision 1.323
diff -u -r1.323 http_protocol.c
--- modules/http/http_protocol.c	2001/06/04 21:43:08	1.323
+++ modules/http/http_protocol.c	2001/06/06 05:29:23
@@ -1745,9 +1745,8 @@
 
 static void reset_filters(request_rec *r)
 {
-    r->connection->output_filters = r->output_filters = NULL;
-    ap_add_output_filter("CORE", NULL, NULL, r->connection);
     r->output_filters = r->connection->output_filters;
     ap_add_output_filter("CONTENT_LENGTH", NULL, r, r->connection);
     ap_add_output_filter("HTTP_HEADER", NULL, r, r->connection);
 }




Mime
View raw message