1
0
mirror of https://github.com/apache/httpd.git synced 2026-10-23 22:49:01 +03:00
Commit Graph

119 Commits

Author SHA1 Message Date
Chris Darroch
e69f467709 Introduce a check_config phase between pre_config and open_logs,
to allow modules to review interdependent configuration directive
values and adjust them while messages can still be logged to the
console.

The open_logs phase is already used somewhat for this purpose by
certain MPMs (winnt, prefork, worker, and event) but only by forcing
their functions ahead of the core ap_open_logs() function, and
since this phase runs after the ap_signal_server function during startup,
it can not be used to generate messages on the console when restarting.

Add the check_config phase to mod_info and mod_example.

Handle relevant MPM directives during this phase and format messages
for both the console and the error log, as appropriate.  Bounds and sanity
checks on the values of the MPM directives are handled in sequence in
this phase instead of in the various directive handling functions, since
those functions (e.g., set_max_clients()) may not be called at all if their
directives do not appear in the configuration files, and even if they
are called, there is no guarantee that this will occur in any particular
order.

Remove from the worker and event MPMs the code in the pre_config phase
that alters the configuration node tree by re-ordering ThreadsPerChild
ahead of MaxClients.  This code is effective but insufficient; for
example, if ServerLimit follows MaxClients, the test against server_limit
in set_max_clients() is invalid.  (In practice, this only results in
incorrect or absent warnings on the console, because server_limit is
set to its configured value when the main loop re-runs the configuration
process.)

Prevent ap_threads_per_child from exceeding thread_limit in the
winnt, worker, and event MPMs.  This situation could occur if
ThreadsPerChild was not specified in the configuration files and
ThreadLimit was set to a value smaller than DEFAULT_THREADS_PER_CHILD,
because set_threads_per_child() would never be called and therefore
its bounds check against thread_limit would not be performed.

Remove from the winnt, prefork, worker, and event MPMs the
changed_limit_at_restart flag.  Set the first_server_limit and
first_thread_limit values during the first execution of the check_config
function, and use them to detect changes to ServerLimit and ThreadLimit
across restarts and issue appropriately formatted warnings.  Remove the
comments about the error log being a "bit bucket"; this was true when
the code was originally committed in r92530 but that was due to a bug
fixed in r92769.

Be consistent about setting all MPM configuration directive values in the
pre_config phase.

Rephrase and reformat the console and log file messages relating to
MPM configuration directives to be consistent across all MPMs.  Use
briefer messages when logging to the error log than to the console.

Update miscellaneous stale comments and messages (e.g., reference to
daemons_min_free in worker and event MPMs, "prefork open_logs" in
winnt MPM, and StartServers in netware MPM).

The winnt, netware, beos, and mpmt_os2 MPMs should be tested by developers
with access to those platforms, especially the winnt MPM, which has
unique logic with respect to distinguishing between parent and child
processes during the configuration phases.

Update the English documentation for the worker MPM's ThreadsPerChild
directive, which no longer needs to precede other MPM directives in the
configuration files if it has a non-default value.  The German (.de) and
Japanese (.ja) translations should be updated by developers fluent in
those languages.



git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@431460 13f79535-47bb-0310-9956-ffa450edef68
2006-08-14 22:55:45 +00:00
Roy T. Fielding
de659cbed0 update license header text
git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@420983 13f79535-47bb-0310-9956-ffa450edef68
2006-07-11 20:33:53 +00:00
Colm MacCarthaigh
dd95d7c37c Update the copyright year in all .c, .h and .xml files
git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@395228 13f79535-47bb-0310-9956-ffa450edef68
2006-04-19 12:11:27 +00:00
Ian Holsman
8c1e315d3f Doxygen fixup / cleanup
submited by: Neale Ranns neale ranns.org
reviewed by: Ian Holsman



git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@263931 13f79535-47bb-0310-9956-ffa450edef68
2005-08-28 23:03:59 +00:00
Paul Querna
da9a8de753 Add AP_INIT_TAKE_ARGV. There can be some inconsistent results because of the behavoir of ap_getword_conf. Do not rely upon any last argument that is "". If the argument is in the middle of the line, it should work correctly.
This is updated from the version sent to dev@httpd to fix the behavoir with 0 arguments.

* include/http_config.h: minor MMN bump for the new interface.
* modules/generators/mod_autoindex.c: Migrate IndexOptions to the new ARGV command type.


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@168202 13f79535-47bb-0310-9956-ffa450edef68
2005-05-04 22:23:00 +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
Joe Orton
0ad30713dc * include/http_config.h: Add missing parameter name.
git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@111964 13f79535-47bb-0310-9956-ffa450edef68
2004-12-15 11:58:18 +00:00
Joe Orton
28a2fdc595 Implement -t -DDUMP_MODULES using generic test_config hook rather than
hooking into mod_so from main.c:

* include/http_config.h, server/config.c: Declare test_config hook.

* server/main.c: Drop hooks into mod_so; run test_config hooks.

* modules/mappers/mod_so.h: Drop ap_dump_loaded_modules optional
function.

* modules/mappers/mod_so.c (dump_loaded_modules): Renamed from
ap_dump_loaded_modules; only run if -DDUMP_MODULES is defined.
(register_hooks): Register test_config hook instead of optional
function.

Reviewed by: Justin Erenkrantz, Paul Querna


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@104685 13f79535-47bb-0310-9956-ffa450edef68
2004-08-17 13:47:10 +00:00
Paul Querna
9d66007aa2 Added 'AllowOverride Options=Indexes,MultiViews' to give an admin better
control over what options can be used in .htaccess files.

PR: 29310
Submitted by: Tom Alsberg <alsbergt-apache cs.huji.ac.il>


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@104283 13f79535-47bb-0310-9956-ffa450edef68
2004-07-14 06:36:42 +00:00
André Malo
7accf16eed Nobody objected:
<IfModule> now takes the module identifier in addition to the
filename.

CAUTION: this commit breaks the build on netware. It still needs
to be adjusted. (but I don't have any netware knowledge...)
Also, developers need to re-run buildconf on unices.

PR: 29003
Submitted by: Edward Rudd <eddie omegaware.com>, Andr� Malo


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@103849 13f79535-47bb-0310-9956-ffa450edef68
2004-06-04 22:40:47 +00:00
André Malo
49f48fb4b4 changed the following APIs to return an error instead of hard exiting:
ap_add_module, ap_add_loaded_module, ap_setup_prelinked_modules,
and ap_process_resource_config


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@103517 13f79535-47bb-0310-9956-ffa450edef68
2004-04-25 17:23:31 +00:00
André Malo
29e1f5d480 ap_add_named_module is not used and maintained anymore. Drop it.
git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@103516 13f79535-47bb-0310-9956-ffa450edef68
2004-04-25 17:05:51 +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
129635b965 fix copyright dates according to the first check in
git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@102548 13f79535-47bb-0310-9956-ffa450edef68
2004-02-07 19:27:57 +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
Bradley Nicholes
cadda948ed Revert the change to the cmd_func typedef to avoid a type mismatch
compiler error in the Metrowerks compiler


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@101636 13f79535-47bb-0310-9956-ffa450edef68
2003-10-31 22:00:38 +00:00
Sander Striker
9120ae5e41 * include/http_config.h
(cmd_func): Fix prototype, eliminate warning.


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@101630 13f79535-47bb-0310-9956-ffa450edef68
2003-10-31 09:01:49 +00:00
Sander Striker
96cbc437ca * include/http_config.h
(ap_get_module_config, ap_set_module_config): Use the macro
    when AP_DEBUG is _not_ defined, not the other way around.

Noticed by: Jeff Trawick


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@98921 13f79535-47bb-0310-9956-ffa450edef68
2003-03-07 14:37:36 +00:00
Sander Striker
d4afb99c56 * include/http_config.h
(ap_get_module_config, ap_set_module_config): Always declare.


* include/httpd.h

  (ap_strchr, ap_strchr_c, ap_strrchr, ap_strrchr_c, ap_strstr, ap_strstr_c):
    Always declare.


* server/util_debug.c

  (ap_get_module_config, ap_set_module_config, ap_strchr, ap_strchr_c,
   ap_strrchr, ap_strrchr_c, ap_strstr, ap_strstr_c):
    Always implement and export.


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@98903 13f79535-47bb-0310-9956-ffa450edef68
2003-03-06 17:56:05 +00:00
Justin Erenkrantz
1a344d46b6 Allow restart of httpd to occur even with syntax errors in the config
file.  (Out-of-date DSOs with bad MMNs will still be fatal unfortunately.)

Add return parameter to ap_process_config_tree - OK on success, !OK on
syntax error.  We will no longer call exit() from ap_process_config_tree.
The caller must exit if there is an error (makes sense anyway).  This allows
the initial start-up code to delay the exit until trying to let the
signal_server optional function execute first.

(The chances are that the syntax error isn't in the PidFile directive.  If
that happens, we'll try the default one.  Oh, well.)

PR: 16813


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@98693 13f79535-47bb-0310-9956-ffa450edef68
2003-02-17 07:04:50 +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
Aaron Bannert
fa117e49dc Style cleanup (remove tabs, fix alignment).
Submitted by:	Thom May <thom@planetarytramp.net>


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@94837 13f79535-47bb-0310-9956-ffa450edef68
2002-04-28 20:26:09 +00:00
Bill Stoddard
7da34b011d Add a new parameter to the quick_handler hook to instruct
quick handlers to optionally do a lookup rather than actually
serve content. This is the first of several changes required fix
several problems with how quick handlers work with subrequests.


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@94240 13f79535-47bb-0310-9956-ffa450edef68
2002-03-27 22:42:16 +00:00
Martin Kraemer
9e64dafb95 Typo (noticed while browsing http://docx.webperf.org/)
git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@93948 13f79535-47bb-0310-9956-ffa450edef68
2002-03-15 07:37:21 +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
Aaron Bannert
d5fdaf9cfd The pre_config hook now takes a return value. This allows modules to
cause the server to bail out under error conditions.


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@93063 13f79535-47bb-0310-9956-ffa450edef68
2002-01-28 23:49:40 +00:00
Ian Holsman
c7c6e876a9 change open_logs hook to return a value, allowing you to flag a error
while opening logs

Obtained from: Doug MacEachern


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@92149 13f79535-47bb-0310-9956-ffa450edef68
2001-11-24 00:08:30 +00:00
Ian Holsman
86b792b21c Modify post_config hook so that it can return a error,
causing the server not to start.
previous method was to call exit(1) which would not fail
gracefully

PR:
Obtained from:
Submitted by:
Reviewed by:	(Idea only Jeff Trawick)


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@92144 13f79535-47bb-0310-9956-ffa450edef68
2001-11-23 16:35:22 +00:00
Cliff Woolley
bd193e57f3 fix spelling
git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@92027 13f79535-47bb-0310-9956-ffa450edef68
2001-11-18 06:30:55 +00:00
Cliff Woolley
89b050edb4 Don't know why these were missing... just an oversight, I'm guessing?
git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@92026 13f79535-47bb-0310-9956-ffa450edef68
2001-11-18 05:50:43 +00:00
Cliff Woolley
01c110e3e9 Fix spelling
git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@92025 13f79535-47bb-0310-9956-ffa450edef68
2001-11-18 05:35:47 +00:00
Ian Holsman
ad8b2f0c73 Added Doxygen Comments
With these 2 changes most of the Doxygen warnings go away.
(these patch just modifies comments/slight moves in typedefs, no other changes)


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@91229 13f79535-47bb-0310-9956-ffa450edef68
2001-10-02 04:09:53 +00:00
William A. Rowe Jr
9507e7d0c4 Better doc of ap_server_root_relative()
git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@90583 13f79535-47bb-0310-9956-ffa450edef68
2001-08-23 21:01:11 +00:00
William A. Rowe Jr
3ba6289b68 Eliminated ap_os_[systemcase|[case_]canonical]_filename() and
move ap_os_is_path_absolute() into util.c (now relies on apr.)


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@90567 13f79535-47bb-0310-9956-ffa450edef68
2001-08-23 19:08:20 +00:00
William A. Rowe Jr
5f9b514613 Provide an ap_set_deprecated() fn for quick-and-dirty 'we don't do this'
entries in the command table.

  (Also fixes a nit about returning a single bit of an apr_int_64 as an int.
  Know how this group loves !! expresssions :)


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@89896 13f79535-47bb-0310-9956-ffa450edef68
2001-08-03 00:59:01 +00:00
Ryan Bloom
85e8fbd0e2 Add the ability to extend the methods that Apache understands
and have those methods <limit>able in the httpd.conf. It uses
the same bit mask/shifted offset as the original HTTP methods
such as M_GET or M_POST, but expands the total bits from an int to
an ap_int64_t to handle more bits for new request methods than
an int provides.
Submitted by:	Cody Sherr <csherr@covalent.net>


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@89869 13f79535-47bb-0310-9956-ffa450edef68
2001-08-02 04:25:20 +00:00
Ben Laurie
102fde2e91 Doxygenation.
git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@89235 13f79535-47bb-0310-9956-ffa450edef68
2001-05-28 15:32:50 +00:00
Jeff Trawick
03962d5f86 Separate enablement of AP_DEBUG code from enablement of code
which depends on the compiler supporting designated initializers.


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@89103 13f79535-47bb-0310-9956-ffa450edef68
2001-05-13 12:21:25 +00:00
Greg Stein
ab9d00b0c4 Implement Jeff's idea for an autoconf-defined symbol to enable the special
command function prototype stuff. AP_DEBUG is always set in maintainer mode
and AP_DEBUG_HAVE_GCC is set when the compiler is GCC.

Submitted by: Jeff Trawick


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@89102 13f79535-47bb-0310-9956-ffa450edef68
2001-05-13 10:37:06 +00:00
Victor J. Orlikowski
a3d0750230 Fix up some of the definitions, based on Ian's patch.
git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@89088 13f79535-47bb-0310-9956-ffa450edef68
2001-05-11 18:21:27 +00:00
Chuck Murcko
86154b12b2 Add the AP_DECLARE()/AP_CORE_DECLARE macros on the return types of
functions used by mod_proxy for export in DLL
Submitted by:	Ian Holsman <IanH@cnet.com>
Reviewed by:	Chuck murcko


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@89078 13f79535-47bb-0310-9956-ffa450edef68
2001-05-11 04:35:41 +00:00
Doug MacEachern
d2c7c8ef9b C::Scan strikes again; include argument name in ap_invoke_handler prototype
git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@88965 13f79535-47bb-0310-9956-ffa450edef68
2001-04-30 06:04:33 +00:00
Doug MacEachern
cd7883893c Add ap_set_int_slot() function
PR:
Obtained from:
Submitted by:	John K. Sterling <sterling@covalent.net>
Reviewed by:	dougm


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@88902 13f79535-47bb-0310-9956-ffa450edef68
2001-04-20 16:43:39 +00:00
Ryan Bloom
019d25acca We need a prototype for ap_show_mpm
git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@88857 13f79535-47bb-0310-9956-ffa450edef68
2001-04-14 18:20:56 +00:00
Brian Havard
c65d5ee7e4 Reformat declaration so make_export.awk will recognize them. Yes, I know this
makes lines longer than is normally acceptable but I'd like to see anyone come
up with an awk script that handles these things broken over multiple lines...


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@88646 13f79535-47bb-0310-9956-ffa450edef68
2001-04-02 15:28:09 +00:00
Bill Stoddard
4732553655 Performance: Add quick_handler hook. This hook is called at the
very beginning of the request processing before location_walk,
translate_name, etc.  This hook is useful for URI keyed content
caches like Mike Abbott's Quick Shortcut Cache.


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@88596 13f79535-47bb-0310-9956-ffa450edef68
2001-03-27 19:19:08 +00:00
Doug MacEachern
bc660e9860 top_module global variable renamed to ap_top_module
git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@88582 13f79535-47bb-0310-9956-ffa450edef68
2001-03-26 15:39:52 +00:00
William A. Rowe Jr
c96cc340bb Reconsidered the wisdom of this change... back to the drawing board.
The ap_ prefix is still good, IMHO


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@88313 13f79535-47bb-0310-9956-ffa450edef68
2001-02-25 01:12:50 +00:00
William A. Rowe Jr
5cccb4a478 Clean up namespace badness with s/configfile_t/ap_configfile_t/
git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@88312 13f79535-47bb-0310-9956-ffa450edef68
2001-02-25 00:51:32 +00:00