httpd-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Greg Ames <>
Subject Re: cvs commit: apache-2.0/src/main http_connection.c http_core.c http_protocol.c http_request.c util_filter.c
Date Thu, 05 Oct 2000 20:57:15 GMT wrote:
> > > All of this assumes that CORE_IN has some understanding of HTTP, it
> > > doesn't, and it shouldn't.  The whole point of CORE_IN, is that it only
> > > understands reading from the network.
> > >
> >
> >                                   getline() has to be able to logically
> > extract just one line and nothing more.  

>           Getline parses it for a single line and saves the rest off to
> the side.  

That is the root of the problem.  ap_get_client_block has to be able to get
every byte of data beyond the LF that terminated the last header line. 
Saving it off to the side is what we want to do to get reasonable
performance, but once we're out of header mode and ap_get_client_block is
called, it needs a way to get whatever data was saved off to the side, in
addition to what's in buckets.  

I can envision a couple of ways to do that:

o Invent some kind of bucket unget operation, if one doesn't exist already.
o Have a buffer that both getline() and ap_get_client_block() are allowed to
access.  I would keep this out of http_protocol.


View raw message