Checkout Tools
  • last updated 6 hours ago
Constraints: committers
Constraints: files
Constraints: dates
Remove the dexter MPM. This has been replaced with the Perchild MPM.

The two MPMs are basically identical, except that Perchild also allows

each child process to have a unique uid/gid combination.

  1. … 15 more files in changeset.
Begin to move the code that updates the child status out of the MPMs and

into the main-line code. This ensures that all MPMs can easily forget

about updating their status.

  1. … 6 more files in changeset.
INIT_SIGLIST() is gone; stop using it

  1. … 6 more files in changeset.
*) include "apr_signal.h" when needed

*) some other minor include tweaks

  1. … 6 more files in changeset.
Replace reinit_scoreboard with ap_create_scoreboard.

  1. … 8 more files in changeset.
renaming various functions for consistency sake



Obtained from:

Submitted by:

Reviewed by:

  1. … 94 more files in changeset.
Get the Unix MPMs restarting again. If we are going to register a cleanup

for ap_cleanup_scoreboard, then we have to kill that cleanup with the same

function. This also makes ap_cleanup_scoreboard a non-static function, and

makes ap_cleanup_shared_mem a static function.

  1. … 7 more files in changeset.
get rid of some cruft related to a now-unused parameter to

make_child() and unnecessary calls to time()

  1. … 6 more files in changeset.
ap_new_connection() returns NULL if an error occurred (prefork MPM

and ap_new_connection() were changed last week)

I have skipped putting the change into WinNT MPM and mod_proxy. I

left a note in the mod_proxy code; for the NT MPM I think I can talk

somebody into doing the right thing for me.

  1. … 9 more files in changeset.
Bring mod_status for 2.0 back in line with mod_status for 1.3. This is

basically a straight port of the 1.3 module to 2.0. The MPMs need to be

modified a bit to work with mod_status, but prefork, mpmt_pthread, and

dexter have already been changed. I will fix perchild tonight. There

is a lot of common code that can be abstracted, and there seems to be a

small bug with regard to what mpmt_pthread and dexter report as current

connections. ExtendedStatus does work again, although until the bug

mentioned above is fixed, it isn't as useful on mpmt_pthread and dexter.

Next week, I will look at allowing other modules to add data to the

STATUS page and possibly to the scoreboard itself.

  1. … 37 more files in changeset.

Use the appropriate APR_FINFO_flags for the apr_stat/lstat/getfileinfo

calls to avoid ownership and permissions on Win32 when they are not

required, and until they are implemented.

  1. … 15 more files in changeset.

The changes required for the APR_FINFO_wanted argument to

apr_stat/lstat/getfileinfo. These are -NOT- optimal, they

are simply the required changes to get the server working.

The size of the patch is a warning about how we need to

really look at what we are trying to accomplish with all

of these stat/lstat calls.

  1. … 26 more files in changeset.

The big change. This is part 3 of the apr-util symbols rename, please

see the first commit of srclib/apr-util/include (cvs apr-util/include)

for the quick glance at symbols changed.

  1. … 85 more files in changeset.
fix the declaration of the register-hooks function in the remaining

MPMs... Ryan fixed prefork.c yesterday

  1. … 7 more files in changeset.
Stop using environment variables to set ONE_PROCESS and NO_DETACH. Now

we use the -D command line argument to Apache to configure these


Submitted by: Greg Stein

  1. … 9 more files in changeset.
fix some handler brokenness so that dexter doesn't segfault at startup

ap_start_shutdown is not used by anybody outside of the MPMs, so we don't

need to put it in the ap_mpm.h header file. This also makes all of the

instances of ap_start_shutdown static.

  1. … 6 more files in changeset.
Get rid of ap_new_apr_connection(). ap_new_connection() now has

fewer parameters: the local and remote socket addresses were removed

from the parameter list because all required information is available

via the APR socket.

I haven't tested the most important part -- the WinNT MPM changes

-- but it compiles and it looks okay :) If the WinNT MPM works on

Win98 these days let me know.

  1. … 11 more files in changeset.
Use APR_LOCKALL in dexter and mpmt_pthread to serialize poll and accept. This

allows APR to optimize when a platform has locks that work for both threads and


  1. … 1 more file in changeset.
Fix a lot of the fallback from the apr_ssize_t to apr_size_t change

Submitted by: Victor J. Orlikowski <>

  1. … 8 more files in changeset.
Add a temporary pool argument to unixd_pre_config, so that it can call

APR functions (grumble). This is needed for apr_stat, which will be in

the suexec path coming up.

  1. … 6 more files in changeset.
This begins to remove BUFF from the server. The idea is to go very slowly

with this. To begin with, we store both the socket and the BUFF in the

conn_rec. Functions are free to use which ever they want, in the end all

of the data goes to the same place. This modifies all of the MPMs except

Windows. All of the Unix MPMs are working, but the others need to be


  1. … 10 more files in changeset.

Renamed all MODULE_EXPORT symbols to AP_MODULE_DECLARE and all symbols

for CORE_EXPORT to AP_CORE_DECLARE (namespace protecting the wrapper)


All _VAR_ flavors changes to _DATA to be absolutely clear.

Thank you Greg, for the most obvious suggestion.

  1. … 102 more files in changeset.

The lots of little ones... APR_IS_STATUS_condition(rv) conditional macros

replacing the majority of fallible rv == APR_condition tests. But there

are lots more to fix, these are the obvious ones that already did proper

canonical error conversion.

  1. … 9 more files in changeset.
Remove IOLs from Apache. They are no longer necessary, now that we have

filtering beginning to work. There is a hack that has been repeated

through this patch, we morph a pipe into a socket, and put the socket

into the BUFF. Everytime we do that, we are working with a pipe from

a CGI, and we should be creating a pipe bucket and passing that bucket

back. Because we don't actually have pipe buckets yet, we are using this

hack. When we get pipe buckets, this will be fixed.

  1. … 19 more files in changeset.
APRize disabling nagle (setting TCP_NODELAY).

Note that several areas have not been tested as they apply to MPMs or APR

code that I can't test.


Obtained from:

Submitted by:

Reviewed by:

  1. … 6 more files in changeset.

Remaining cleanup of ap_ -> apr_ and AP_ -> APR_ transformation...

see src/lib/apr/apr_compat.h for most details.

Also a few minor nits to get Win32 to build.


Obtained from:

Submitted by:

Reviewed by:

  1. … 73 more files in changeset.
Convert all of the apr_listen.h to ap_listen.h. This was a side effect

of Doug M. big change last night.

  1. … 5 more files in changeset.
prefix libapr functions and types with apr_

  1. … 143 more files in changeset.
Add a NO_DETACH environment variable to all MPMs that understand

ONE_PROCESS. This allows Apache to start up without detaching from

the controlling terminal, but also not going into single process mode.

The main purpose of this patch is to make it very easy to debug the

child process startup code.

PR: 2144

  1. … 5 more files in changeset.