You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@httpd.apache.org by Greg Stein <gs...@lyra.org> on 2001/03/05 09:00:35 UTC

Re: cvs commit: httpd-2.0/server request.c Makefile.in

On Mon, Mar 05, 2001 at 04:43:56AM -0000, rbb@apache.org wrote:
> rbb         01/03/04 20:43:56
> 
>   Modified:    .        libhttpd.dsp
>                include  http_request.h
>                modules/http http_protocol.c http_request.c
>                server   Makefile.in
>   Added:       server   request.c
>   Log:
>   Another chunk of code from http to core.  This should continue to build
>   on all platforms.  The next job is to shuffle functions back and forth
>   so that the server builds without mod_http.

All that will tell you is that you've moved enough HTTP code over into
server/.

I'm out for the next few days, and need to prep. Can't review these past
couple items. One day :-) ... Like I said before, it is worth whacking with
a big stick, then we can tune it later with smaller rearrangements (e.g. put
some stuff back into modules/http).

I also believe that some of these have questionable intent. Going back to
the DocumentRoot example. Sure, it *could* be used to specify a directory
for protocol FOO, but that's just saying "I've got this hammer here. Oh,
that looks like a nail. And that does, too," even when those other things
are screws and bolts and...

Another example is the auth stuff. Other protocol use authentication, sure,
but not basic or digest. That's just wrong.

And byte ranges? Sure, FTP has them, but that doesn't make byte ranges
"core"; that just says that HTTP and FTP happen to use them. SMTP, POP,
IMAP, NNTP, etc don't.

I'm also concerned that these wholesale shifts are not examining the problem
correctly. A lot of the request stuff was simply shifted over, without
consideration for what a multiprotocol request should actually *look* like.
I think what we have is way too HTTP specific, and needs to be split into
two pieces: generic request plus HTTP request.

It's a lot harder to shove HTTP stuff out, than to write a different
protocol and pull in stuff that is needed. IOW, server/request.c will remain
big and bulky and never get paired down to a generic request. It'll always
have little HTTP turds in it. But if it was started from scratch, then it
would hold *only* those generic items.

Hmm. Maybe it is simply that this stuff seems to be occurring in a vacumm.
"This seems generic", so it goes.


Ah, well. Just consider that stuff food for thought. As long as HTTP works,
then I'm happy.

Cheers,
-g

-- 
Greg Stein, http://www.lyra.org/