makes life for me and my compiler much easier.
This one should be back-ported to Apache 1.3.10-dev
Submitted by: Martin Kraemer
git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@83771 13f79535-47bb-0310-9956-ffa450edef68
Replace pre_connection module call with a register_hook call and
implement pre_connection as a hook. The intent is that these hooks will
be extended to allow Apache to be multi-protocol, and also to allow the
calling order to be specified on a per-hook/per-module basis. [Ben Laurie]
Port a bunch of modules to the new module structure.
["Michael H. Voase" <mvoase@midcoast.com.au>]
Submitted by: Ben Laurie
git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@83770 13f79535-47bb-0310-9956-ffa450edef68
Basic restructuring to introduce the MPM concept; includes various
changes to the module API... better described by docs/initial_blurb.txt.
Created multiple process model (MPM) concept by ripping out the process
guts from http_main.c and http_core.c and moving them to separate files
under src/modules/mpm/
Moved socket creation stuff to listen.c.
Moved connection open, maintenance and close to http_connection.c.
I/O layering and BUFF revamp. Much of buff.c moved to ap_iol,
iol_socket, and iol_file. See docs/buff.txt.
Moved user and auth fields from connection_rec to request_rec.
Removed RLIMIT stuff, supposedly to be implemented later in mod_cgi.
Disabled suexec, supposedly to be reimplemented later.
Submitted by: Dean Gaudet
git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@83763 13f79535-47bb-0310-9956-ffa450edef68
the WIN9x code co-exist with the NT specific code. Since I started this work,
I've managed to improve the static page serving performance of Apache on NT by
almost 50%. Still a long way from Apache on Linux though.
TODO:
- Reuse the AcceptEx accept socket (performance)
- Clean up the organization of the winnt mpm
- Implement Async AcceptEx and Receive. Will this break modules?
- File handle cache (file i/o accounts for more than 50% of the time per request)
- TransmitFile (I have prototype code implemented). Should we add a send_file API
to the I/O control layer? Maybe Apache should always try to send_file. Platforms
that don't support send_file could in turn, invoke the appropriate buff code
which would then invoke socket iol write/writev.
git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@83739 13f79535-47bb-0310-9956-ffa450edef68
environment block is not fully inherited from the parent). Start working on I/O layering support.
It's time to make this thing serve a page. Waiting to check-in iol_file and iol_socket...
git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@83667 13f79535-47bb-0310-9956-ffa450edef68
when only one child process is running. It eliminates cross-process
serialization and can reuse the data from a poll call.
git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@83647 13f79535-47bb-0310-9956-ffa450edef68
to mpm-merge-1 onto the mpm tree
prior to the merge, the mpm tree was tagged with apache-1_3-merge-1-pre
and after the merge, the mpm tree will be tagged with apache-1_3-merge-1-post
note: none of htdocs/manual is present in mpm at this point.
git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@83587 13f79535-47bb-0310-9956-ffa450edef68
that we need an char_of_death array to do this safely, and it's just not
worth the effort. The EINTR stuff is left behind, though. Hopefully this
is now decent again.
git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@83566 13f79535-47bb-0310-9956-ffa450edef68
never dealt with in the code to write to the pipe of death, and in
pathological cases where the number of processes is greater than
PIPE_BUF, we could end up only killing some processes.
git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@83563 13f79535-47bb-0310-9956-ffa450edef68
went along with it), to fix logging problems. Sometimes the bug would
show up as a segfault, and sometimes as logging to an incorrect file.
git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@83561 13f79535-47bb-0310-9956-ffa450edef68
references pthread calls, but they are essentially no-ops in the
non-threaded case; these can be #defined or wrapped away.
git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@83530 13f79535-47bb-0310-9956-ffa450edef68