1
0
mirror of https://github.com/apache/httpd.git synced 2025-11-08 04:22:21 +03:00
Commit Graph

102 Commits

Author SHA1 Message Date
Nick Kew
b0a5cb0bb9 Add monitor hook (discussed under "watchdog" thread).
git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@188846 13f79535-47bb-0310-9956-ffa450edef68
2005-06-07 19:13:37 +00:00
Justin Erenkrantz
905cdf9f0b Update copyright year to 2005 and standardize on current copyright owner line.
git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@151408 13f79535-47bb-0310-9956-ffa450edef68
2005-02-04 20:28:49 +00:00
Jeff Trawick
592750b026 worker MPM: Fix a problem which could cause httpd processes to
remain active after shutdown.

The problem occurred when a scoreboard entry currently
in use by an exiting child process was used for a new child
process.  At that point, the MPM forgot about the exiting
child process, so ap_reclaim_child_processes() wouldn't be
able to forceably terminate it.

(An exiting child process may *never* exit due to a stuck
or long-running request being handled on one of the threads.)


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@109510 13f79535-47bb-0310-9956-ffa450edef68
2004-12-02 17:39:22 +00:00
Jeff Trawick
c940ea5b58 use existing directive name ThreadStackSize instead of
WorkerStackSize

as made obvious by: Brad Nicholes


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@102975 13f79535-47bb-0310-9956-ffa450edef68
2004-03-15 23:08:41 +00:00
Jeff Trawick
cb5c3dd6fd Threaded MPMs for Unix and Win32: Add WorkerStackSize directive
to override default thread stack size for threads which handle
client connections.  Required for some third-party modules on
platforms with small default thread stack size.

This is also useful for trimming back the stack size on
platforms with relatively large default stack size in order to
conserve address space for supporting more threads per child.


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@102931 13f79535-47bb-0310-9956-ffa450edef68
2004-03-11 03:57:50 +00:00
Joe Orton
7bc45b4845 * include/mpm_common.h (ap_pod_t): Remove 'sa' field.
* server/mpm_common.c (ap_mpm_pod_open, dummy_connection): Use
ap_listeners->bind_addr for the dummy connection rather than doing a
name lookup on the first listener's hostname and using one of the
addresses returned.

PR: 27313


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@102869 13f79535-47bb-0310-9956-ffa450edef68
2004-03-06 14:50:55 +00:00
Jeff Trawick
8ab979d28f Add a new directive EnableExceptionHook that must be specified for
exception hooks to be called (in addition to the build time
requirements).

The 2.1-dev feature is now more aligned with the 1.3.30-dev feature,
in that there is a build-time requirement as well as a configuration
requirement.


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@102686 13f79535-47bb-0310-9956-ffa450edef68
2004-02-19 11:19:43 +00:00
André Malo
eeb57c17ad fix name of The Apache Software Foundation
git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@102619 13f79535-47bb-0310-9956-ffa450edef68
2004-02-09 20:40:53 +00:00
André Malo
4f02cb1e18 apply Apache License, Version 2.0
git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@102525 13f79535-47bb-0310-9956-ffa450edef68
2004-02-06 22:58:42 +00:00
André Malo
fb07607180 update license to 2004.
git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@102135 13f79535-47bb-0310-9956-ffa450edef68
2004-01-01 13:26:26 +00:00
Jeff Trawick
457570612a consolidate code related to sig_coredump
a note on perchild:
  perchild exception handling was busted before this and is still busted
  the problem I noticed was that a client that exposes a segfault never
  gets its connection dropped and the parent never notices that the
  child process that segfaulted hasexited


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@99312 13f79535-47bb-0310-9956-ffa450edef68
2003-04-09 16:58:30 +00:00
Greg Ames
b906d05f70 Linux 2.4+: enable coredumps when Apache is started as root if
CoreDumpDirectory is explicitly coded


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@98908 13f79535-47bb-0310-9956-ffa450edef68
2003-03-06 21:48:58 +00:00
André Malo
742af25096 finished that boring job:
update license to 2003.

Happy New Year! ;-))


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@98573 13f79535-47bb-0310-9956-ffa450edef68
2003-02-03 17:53:28 +00:00
Brian Pane
4ea071cb68 fix ap_mpm_set_max_mem_free declaration to match mpm_common.c
git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@95958 13f79535-47bb-0310-9956-ffa450edef68
2002-07-04 22:39:03 +00:00
Brian Pane
de4e29fdad Add missing declarations of the new max_mem_free stuff
so prefork will compile


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@95957 13f79535-47bb-0310-9956-ffa450edef68
2002-07-04 17:54:49 +00:00
Jeff Trawick
0547e6e6e9 Add "-k start|startssl|restart|graceful|stop" support to httpd
for the Unix MPMs.  These have semantics very similar to the
old apachectl commands of the same name.

The use of stderr/stdout and exit status for error conditions
needs to be revisited.  For now it matches apachectl behavior.

Justin Erenkrantz got the ball rolling with this feature.  Some
of his support code was used unchanged.  Other code was shuffled
around and modified or rewritten.


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@95237 13f79535-47bb-0310-9956-ffa450edef68
2002-05-23 12:58:37 +00:00
Jim Jagielski
536cfa19ee Syncing makes no sense now
git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@94309 13f79535-47bb-0310-9956-ffa450edef68
2002-03-29 16:21:48 +00:00
Jim Jagielski
730e99e461 Fold the compiled-in knowledge of the allowable AcceptMutex settings into
its help entry. Requires the use of a extern string rather than a function
call for the initialization to be valid in the macro (Thx to Jeff!).
In the meantime, bump down the error logging until we deal with true
default and configured setting information ala 1.3.

PR:
Obtained from:
Submitted by:
Reviewed by:


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@94062 13f79535-47bb-0310-9956-ffa450edef68
2002-03-20 22:19:11 +00:00
Jim Jagielski
a65170a84c Bring 2.0 up to parity, a bit, with how much info we provide to
the admin regarding valid values for AcceptMutex. Should also
tell 'em what "default" actually maps to, but that can wait.

PR:
Obtained from:
Submitted by:
Reviewed by:


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@94055 13f79535-47bb-0310-9956-ffa450edef68
2002-03-20 16:44:13 +00:00
Roy T. Fielding
845cbfd508 Update our copyright for this year.
git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@93918 13f79535-47bb-0310-9956-ffa450edef68
2002-03-13 20:48:07 +00:00
Bradley Nicholes
44d39613d3 Added the #ifdef's to the prototypes to match the corresponding source code
git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@92774 13f79535-47bb-0310-9956-ffa450edef68
2002-01-08 21:09:02 +00:00
Jeff Trawick
57b42f96ac handle the disappearance of apr_lock_create_np() and
apr_proc_mutex_create_np() and the new parameter to
apr_lock_create() and apr_proc_mutex_create()


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@92653 13f79535-47bb-0310-9956-ffa450edef68
2001-12-29 23:16:24 +00:00
Jeff Trawick
502a0a8eb9 Get mod_cgid killed when a MPM exits due to a fatal error.
Presumably other such processes are affected to.  Now we
give main() a chance to clean up.


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@92019 13f79535-47bb-0310-9956-ffa450edef68
2001-11-17 14:02:26 +00:00
Ryan Bloom
dbb19e0e8c Fix the reporting for child processes that die. This removes
all of the non-portable W* macros from Apache.

Submitted by:	Jeff Trawick and Ryan Bloom


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@91648 13f79535-47bb-0310-9956-ffa450edef68
2001-10-23 17:30:07 +00:00
Jeff Trawick
2b5249df23 namespace-protect accept_lock_mech
fix a bug in the worker MPM which effectively disabled the AcceptMutex
directive


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@90153 13f79535-47bb-0310-9956-ffa450edef68
2001-08-14 12:30:50 +00:00
Jeff Trawick
c8809eb467 change the name of AP_MPM_NEEDS_RECLAIM_CHILD_PROCESSES to
be more consistent with similar names added recently; this
also cleans up an #if/#ifdef discrepency


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@90141 13f79535-47bb-0310-9956-ffa450edef68
2001-08-13 18:24:53 +00:00
Jeff Trawick
f29b938e84 (hopefully) get WinNT MPM to build using mpm_common.c code; a few notes:
. the selection of ap_sock_disable() is certainly ugly, but that may
  need to be cleaned up in a different manner...
. the directive functions couldn't be AP_DECLARE() if they are to be
  compatible with AP_INIT_TAKExxx(); this is an old restriction


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@90138 13f79535-47bb-0310-9956-ffa450edef68
2001-08-13 16:42:13 +00:00
Jeff Trawick
3f770a03df allow non-Unix MPMs to use mpm_common.c by not automatically
building in Unix-specific code


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@90137 13f79535-47bb-0310-9956-ffa450edef68
2001-08-13 15:44:00 +00:00
Ryan Bloom
8006145310 Begin to sanitize the MPM configuration directives. Now, all
MPMs use the same functions for all common MPM directives.  This
should make it easier to catch all bugs in these directives once.

Everybody should check their favorite MPM to ensure that it still
compiles, and that these directives work.  This is a big patch, and
although it looks good, and things compiled for me, that is no
garauntee that it will work on all platforms.  :-)

Submitted by:	Cody Sherr <csherr@covalent.net>


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@90132 13f79535-47bb-0310-9956-ffa450edef68
2001-08-13 04:57:35 +00:00
William A. Rowe Jr
c86f120560 Doc formatting fixes
git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@89749 13f79535-47bb-0310-9956-ffa450edef68
2001-07-27 21:01:16 +00:00
Greg Ames
590a1bde98 fix memory leak of apr_sockaddr_t and apr_socket_t in ap_mpm_pod_signal,
called by perform_idle_server_maintenance.

allocate & init one apr_sockaddr_t for the dummy connect at pod open time.
use a temporary subpool for the apr_socket_t


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@89612 13f79535-47bb-0310-9956-ffa450edef68
2001-07-18 21:16:40 +00:00
Ryan Bloom
931fe85b8d First pass at the pipe_of_death logic for the prefork MPM. This does
pass some initial testing, but it needs to be banged on more.  It looks
like if the server gets a lot of requests to restart all at once, there
are potential problems, but other than that this does seem to solve our
current restart issues.


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@89282 13f79535-47bb-0310-9956-ffa450edef68
2001-06-07 00:09:16 +00:00
Jeff Trawick
333ebf30c3 Get rid of some warnings which crept into the Unix MPMs a
few days ago.

mpm_common.h started referencing AP_MPM_NEEDS_RECLAIM_CHILD_PROCESSES
but did not include the header file where this might be defined.

The result was no prototype for ap_reclaim_child_processes() on
platforms which needed it.


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@88562 13f79535-47bb-0310-9956-ffa450edef68
2001-03-22 12:32:21 +00:00
Brian Havard
7c7bd950fd Declaration of ap_reclaim_child_processes() in exports.c needs to be
conditional in the same way that the function's definition is so give it a
suitable macro that will be recogized by the scripts that make exports.c.


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@88537 13f79535-47bb-0310-9956-ffa450edef68
2001-03-19 13:07:28 +00:00
Ben Laurie
921c577c78 More doxygenation.
git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@88531 13f79535-47bb-0310-9956-ffa450edef68
2001-03-17 15:58:09 +00:00
Jeff Trawick
3a73caceb3 Rely on APR to determine whether or not we have netinet/tcp.h. This test
requires a special work-around for IRIX 6.5, which will be in APR soon.
There is no need for it in Apache.

The include of netinet/tcp.h was removed from perchild.c and threaded.c.
They no longer seem to be needed there.

PR:		6459


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@88455 13f79535-47bb-0310-9956-ffa450edef68
2001-03-05 20:15:15 +00:00
Greg Stein
8bcd220ae9 Don't directly include ap_config_auto.h directly. It isn't available on
Windows platforms. Including ap_config.h will pick it up, or it will grab
the appropriate Windows header/defines.


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@88402 13f79535-47bb-0310-9956-ffa450edef68
2001-03-01 00:55:03 +00:00
Roy T. Fielding
381f88d56a Update copyright to 2001
git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@88184 13f79535-47bb-0310-9956-ffa450edef68
2001-02-16 04:26:53 +00:00
Bill Stoddard
526d01a486 Windows doesn't have ap_config_auto. Perhaps we need a HAVE_CONFIG_AUTO
macro?


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@88138 13f79535-47bb-0310-9956-ffa450edef68
2001-02-13 19:48:59 +00:00
Greg Ames
71f08f39bb The "src/" directory no longer exists. Clean up the HARD_SERVER_LIMITS
warning msg to reflect the current directory structure.


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@88137 13f79535-47bb-0310-9956-ffa450edef68
2001-02-13 19:22:27 +00:00
Greg Stein
1229603b02 *) remove some obsolete/unused defines from httpd.h.
*) remove DEFAULT_XFERLOG from main.c; it is never set/used
*) move ap_get_max_daemons() to ap_mpm.h
*) move DEFAULT_LISTENBACKLOG to mpm_common.h


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@88103 13f79535-47bb-0310-9956-ffa450edef68
2001-02-12 02:49:56 +00:00
Ryan Bloom
86a67eff47 Move initgroupgs, ap_uname2id and ap_gname2id from util.c to
mpm_common.c.  These functions are only valid on some platforms,
so they should not be in the main-line code.

These functions are also not portable to non-unix platforms, so they don't
really belong in APR.  Since they are only used in MPMs, for right now,
I am moving them to mpm_common.c


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@87755 13f79535-47bb-0310-9956-ffa450edef68
2001-01-20 06:05:15 +00:00
Brian Havard
7ed141239d 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.

PR:
Obtained from:
Submitted by:
Reviewed by:


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@86133 13f79535-47bb-0310-9956-ffa450edef68
2000-08-22 15:09:28 +00:00
William A. Rowe Jr
1a9db204f5 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.

PR:
Obtained from:
Submitted by:
Reviewed by:


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@86008 13f79535-47bb-0310-9956-ffa450edef68
2000-08-06 06:07:53 +00:00
Ryan Bloom
2179ba1256 Update the mpm_common.h file with docs to use ScanDoc
git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@86003 13f79535-47bb-0310-9956-ffa450edef68
2000-08-06 02:21:06 +00:00
Doug MacEachern
059d8dd212 prefix libapr functions and types with apr_
git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@85976 13f79535-47bb-0310-9956-ffa450edef68
2000-08-02 05:27:38 +00:00
Jeff Trawick
f0bb3353e6 Get ap_socket_disable_nagle() working again.
Submitted by:	Greg Ames
Reviewed by:	Jeff Trawick


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@85894 13f79535-47bb-0310-9956-ffa450edef68
2000-07-26 14:12:38 +00:00
Ryan Bloom
f23ce00e31 Move sock_disable_nagle to mpm_common.c. Rename it to ap_sock_disable_nagle.
Again, I tried to modify all MPMs that are currently using this code.


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@85811 13f79535-47bb-0310-9956-ffa450edef68
2000-07-10 22:08:11 +00:00
Ryan Bloom
074e3c2fb4 Move process_child_status to mpm_common.c. This requires re-naming it
to ap_process_child_status and opening up ap_coredump_dir.  I have
modified all of the MPMs that I saw using this function to work with this
patch.  Sorry if I broke anybody.


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@85808 13f79535-47bb-0310-9956-ffa450edef68
2000-07-10 18:21:24 +00:00
Jeff Trawick
973c011cb7 Fix error messages issued from MPMs which explain where to change
compiled-in limits (e.g., ThreadsPerChild, MaxClients, StartTreads).

missing: the same minor changes for the 2nd BeOS MPM

Submitted by:	Greg Ames
Reviewed by:	Jeff Trawick


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@85645 13f79535-47bb-0310-9956-ffa450edef68
2000-06-21 13:15:30 +00:00