summaryrefslogtreecommitdiffstats
path: root/modules/core (follow)
Commit message (Collapse)AuthorAgeFilesLines
* *) mod_watchdog: add assertions to cleanup codeStefan Eissing2022-02-251-5/+16
| | | | | | | | | | *) core/mpm_preform: do not invoke the fancy new child_stopping/stopped hooks when invoked from a signal handler. This is a stopgap to some strange behaviour in need of some deeper insight. git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@1898418 13f79535-47bb-0310-9956-ffa450edef68
* *) mod_watchdog: do not call a watchdog instance forStefan Eissing2022-02-241-24/+4
| | | | | | | | | | AP_WATCHDOG_STATE_STOPPING outside its thread, as watchdog instances are not prepared to be invoked concurrently. git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@1898376 13f79535-47bb-0310-9956-ffa450edef68
* *) mod_watchdog: use the `child_stopping` and `child_stopped` hooksStefan Eissing2022-02-241-9/+52
| | | | | | | | | to shutdown workers before pool destruction releases global resources and libraries. git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@1898370 13f79535-47bb-0310-9956-ffa450edef68
* *) mod_watchdog: replace the new volatile with atomic access.Stefan Eissing2022-02-231-14/+15
| | | | git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@1898343 13f79535-47bb-0310-9956-ffa450edef68
* *) mod_watchdog: use hook 'child_stopping' to signal watchdogsStefan Eissing2022-02-221-33/+40
| | | | | | | | that they should end processing. git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@1898318 13f79535-47bb-0310-9956-ffa450edef68
* core: Efficient ap_thread_current() when apr_thread_local() is missing.Yann Ylavic2022-01-251-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | #define ap_thread_create, ap_thread_current_create and ap_thread_current to their apr-1.8+ equivalent if available, or implement them using the compiler's thread_local mechanism if available, or finally provide stubs otherwise. #define AP_HAS_THREAD_LOCAL to 1 in the two former case or 0 otherwise, while AP_THREAD_LOCAL is defined to the compiler's keyword iff AP_HAS_THREAD_LOCAL. Replace all apr_thread_create() calls with ap_thread_create() so that httpd threads can use ap_thread_current()'s pool data as Thread Local Storage. Bump MMN minor. * include/httpd.h(): Define AP_HAS_THREAD_LOCAL, AP_THREAD_LOCAL (eventually), ap_thread_create(), ap_thread_current_create() and ap_thread_current(). * server/util.c: Implement ap_thread_create(), ap_thread_current_create() and ap_thread_current() when APR < 1.8. * modules/core/mod_watchdog.c, modules/http2/h2_workers.c, modules/ssl/mod_ssl_ct.c: Use ap_thread_create() instead of apr_thread_create. * server/main.c: Use AP_HAS_THREAD_LOCAL and ap_thread_current_create instead of APR's. * server/util_pcre.c: Use AP_HAS_THREAD_LOCAL and ap_thread_current instead of APR's. * server/mpm/event/event.c, server/mpm/worker/worker.c, server/mpm/prefork/prefork.c: Use ap_thread_create() instead of apr_thread_create. Create an apr_thread_t/ap_thread_current() for the main chaild thread usable at child_init(). * server/mpm/winnt/child.c: Use ap_thread_create() instead of CreateThread(). Create an apr_thread_t/ap_thread_current() for the main chaild thread usable git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@1897460 13f79535-47bb-0310-9956-ffa450edef68
* don't try to load modules from a NULL pathEric Covener2020-07-311-1/+1
| | | | | | | | | | | | ap_server_root_relative() can fail if apr_filepath_merge fails, which can happen with a "bad" drive/volume or who knows what else on Windows. Regardless, if !fullname we are already going to retry wih what was actually passed. git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@1880461 13f79535-47bb-0310-9956-ffa450edef68
* mod_watchdog: use a single "wd_running" pool in wd_worker() thread.Yann Ylavic2020-04-171-19/+10
| | | | | | | Clear the pool where appropriate instead of multiple create/destroy. git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@1876675 13f79535-47bb-0310-9956-ffa450edef68
* * modules/core/mod_watchdog.c (wd_worker): Fix crashes snuck intoJoe Orton2020-04-161-15/+18
| | | | | | | | r1876599 where a destroyed pool was reused. Rename the "ctx" variable to reflect its purpose. Also tweak the pool tags. git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@1876619 13f79535-47bb-0310-9956-ffa450edef68
* Add missing pool tags to help debugging.Yann Ylavic2020-04-161-4/+9
| | | | git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@1876599 13f79535-47bb-0310-9956-ffa450edef68
* * modules/core/mod_watchdog.c: Switch to simpler logic to avoid theJoe Orton2020-04-141-18/+12
| | | | | | | | | | | | | | thread cleanup running before the thread has started, avoiding mutex operations which both have undefined behaviour: a) double-locking an UNNESTED (non-recursive) mutex twice in the parent b) unlocking a mutex in the spawned thread which was locked by the parent (wd_startup, wd_worker_cleanup, wd_worker): Use a boolean to ensure the cleanup does nothing if the thread wasn't started, drop the mutex. git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@1876511 13f79535-47bb-0310-9956-ffa450edef68
* Fix spelling errors found by codespell. [skip ci]Mike Rumph2020-02-131-2/+2
| | | | git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@1873985 13f79535-47bb-0310-9956-ffa450edef68
* mod_watchdog: Correct some log messages and fixRainer Jung2017-11-121-4/+6
| | | | | | | | | | compiler warning "'rv' may be used uninitialized in this function". Follow up to r1722154. git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@1815004 13f79535-47bb-0310-9956-ffa450edef68
* mod_macro: fix usability of globally defined macros in .htaccess files.Yann Ylavic2017-10-281-17/+12
| | | | | | | | | | | | | PR 57525. Reverts pre_config hook from r1656669 (happens too late for EXEC_ON_READ), and ensures ap_macros is reset on restart with a pconf cleanup. Proposed by: Jose Kahan <jose w3.org> Reviewed by: ylavic git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@1813643 13f79535-47bb-0310-9956-ffa450edef68
* Allow WatchdogInterval to be sub 1 secondJim Jagielski2017-06-211-4/+12
| | | | git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@1799435 13f79535-47bb-0310-9956-ffa450edef68
* Not an error... last one is honoredJim Jagielski2017-06-211-4/+0
| | | | git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@1799431 13f79535-47bb-0310-9956-ffa450edef68
* name changes re: suggestionJim Jagielski2017-01-111-5/+5
| | | | git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@1778331 13f79535-47bb-0310-9956-ffa450edef68
* Use pconf as parent pool so mutexes get cleaned on restarts/reloadsJim Jagielski2017-01-111-1/+1
| | | | git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@1778319 13f79535-47bb-0310-9956-ffa450edef68
* And another lognoJim Jagielski2016-11-221-1/+1
| | | | git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@1770845 13f79535-47bb-0310-9956-ffa450edef68
* Oops. update lognoJim Jagielski2016-11-221-2/+2
| | | | git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@1770844 13f79535-47bb-0310-9956-ffa450edef68
* mod_macro improvements to bypass "expected" warnings and conflictsJim Jagielski2016-11-221-7/+60
| | | | git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@1770843 13f79535-47bb-0310-9956-ffa450edef68
* Fix spelling in comments and text files.Rainer Jung2016-08-112-5/+5
| | | | | | | | No functional change. PR 59990 git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@1756038 13f79535-47bb-0310-9956-ffa450edef68
* Add watchdog by default at level 'most' for mod_proxy_hcheckWilliam A. Rowe Jr2016-06-231-1/+1
| | | | git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@1749924 13f79535-47bb-0310-9956-ffa450edef68
* Added many log numbers to log statements thatRainer Jung2016-01-191-1/+1
| | | | | | | | | | | had none. Handled all files in modules/. I used the coccinelle script provided by Stefan. git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@1725392 13f79535-47bb-0310-9956-ffa450edef68
* Fix sparse warnings introduced in r1722154 (inconsistent indenting)Christophe Jaillet2016-01-031-3/+3
| | | | git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@1722701 13f79535-47bb-0310-9956-ffa450edef68
* Update w/ better loggingJim Jagielski2015-12-291-8/+25
| | | | git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@1722154 13f79535-47bb-0310-9956-ffa450edef68
* do some property cleanupAndré Malo2015-07-2051-6/+0
| | | | git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@1691908 13f79535-47bb-0310-9956-ffa450edef68
* mod_macro: Clear macros before initialization to avoid use-after-freeYann Ylavic2015-02-031-8/+14
| | | | | | | | | | on startup or restart when the module is linked statically. PR 57525 Submitted by: apache.org tech.futurequest.net Committed by: Yann Ylavic git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@1656669 13f79535-47bb-0310-9956-ffa450edef68
* Remove APLOG_NOERRNO.Christophe Jaillet2014-07-221-21/+21
| | | | | | | Add some APLOGNO. Fix some alignment. git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@1612466 13f79535-47bb-0310-9956-ffa450edef68
* Add missing APLOGNO.Christophe Jaillet2014-07-201-2/+2
| | | | | | | | Refactor some lines to keep APLOGNO on the same line as ap_log_error, when applicable. Split lines longer than 80. Improve alignment. git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@1612068 13f79535-47bb-0310-9956-ffa450edef68
* Rename module name in doxygen + partly revert r832442 which skipped doxygen ↵Christophe Jaillet2014-05-261-3/+3
| | | | | | doc generation for 'mod_watchdog.h' git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@1597642 13f79535-47bb-0310-9956-ffa450edef68
* fix spelling error in commentJeff Trawick2014-02-241-1/+1
| | | | git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@1571368 13f79535-47bb-0310-9956-ffa450edef68
* Allocate correct size for the array to avoid useless memory allocation and copyChristophe Jaillet2014-01-031-1/+1
| | | | git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@1555259 13f79535-47bb-0310-9956-ffa450edef68
* eol-style = nativeAndré Malo2013-05-201-111/+111
| | | | git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@1484554 13f79535-47bb-0310-9956-ffa450edef68
* Add mod_macro to Windows build.Gregg Lewis Smith2013-01-211-0/+111
| | | | git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@1436058 13f79535-47bb-0310-9956-ffa450edef68
* Added mod_macro to NetWare build.Guenter Knauf2013-01-201-0/+257
| | | | git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@1435834 13f79535-47bb-0310-9956-ffa450edef68
* Add "mod_macro" as a standard module, compiled in with "most".Fabien Coelho2013-01-20143-0/+2366
| | | | | | | | | | | | | | | | | | | | | | | | | | This module was created in 1998 and has been distributed independently ever since. It is hereby donated to the Apache Software Foundation. There are quite a few comments in the source code to explain how it works, as well as extensive non regression tests. Some utilities about array processing could be moved to "core.c". However, I finally decided against for now so that it stays as an external and independent module, and thus may be backported with minimal impact on the source tree. Details of the addition: * modules/core/mod_macro.c: module source code * modules/core/test: non regression tests modules/core/test/conf/: configuration files modules/core/test/ref/: expected results * docs/manual/mod/mod_macro.xml: English documentation * docs/manual/mod/mod_macro.xml.fr: French documentation git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@1435811 13f79535-47bb-0310-9956-ffa450edef68
* If a filename without slashes is specified for LoadFile orStefan Fritsch2012-04-301-34/+43
| | | | | | | | LoadModule and the file cannot be found in the server root directory, try to use the standard dlopen() search path. git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@1332378 13f79535-47bb-0310-9956-ffa450edef68
* No need for process.h system include since we don't use getpid() any moreMladen Turk2011-12-051-4/+0
| | | | git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@1210447 13f79535-47bb-0310-9956-ffa450edef68
* Axe check for second post config call. New ap_state_query(AP_SQ_MAIN_STATE) ↵Mladen Turk2011-12-051-13/+0
| | | | | | == AP_SQ_MS_CREATE_PRE_CONFIG API call does exactly that, so we were actually expecting 4 calls ending up with NULL config in child hook git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@1210445 13f79535-47bb-0310-9956-ffa450edef68
* Add lots of unique tags to error log messagesStefan Fritsch2011-12-032-9/+9
| | | | git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@1209766 13f79535-47bb-0310-9956-ffa450edef68
* Remove some getpid() logging, this is now also included in the error logStefan Fritsch2011-11-301-9/+4
| | | | | | | format. git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@1208835 13f79535-47bb-0310-9956-ffa450edef68
* s/WATCHODG/WATCHDOG/Jeff Trawick2011-11-171-18/+18
| | | | git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@1203331 13f79535-47bb-0310-9956-ffa450edef68
* Cleanup effort in prep for GA push:Jim Jagielski2011-09-231-1/+1
| | | | | | | | Trim trailing whitespace... no func change git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@1174751 13f79535-47bb-0310-9956-ffa450edef68
* Cleanup effort in prep for GA push:Jim Jagielski2011-09-232-6/+6
| | | | | | | | Trim trailing whitespace... no func change git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@1174748 13f79535-47bb-0310-9956-ffa450edef68
* Simplify mod_watchdog dependency checking code. This also fixes mod_watchdogStefan Fritsch2011-08-051-12/+4
| | | | | | | being built shared even with --enable-mods-static=reallyall. git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@1154118 13f79535-47bb-0310-9956-ffa450edef68
* adjustments of build priorities of modules without special dependenciesStefan Fritsch2011-07-131-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | all -> most: - mod_sed reallyall -> most: - mod_log_debug reallyall -> all: - mod_dav_lock - mod_echo - mod_charset_lite - mod_slotmem_plain - mod_dialup few -> all: - mod_data - mod_reflector - mod_asis most -> all: - mod_heartbeat - mod_heartmonitor - mod_watchdog most -> reallyall: - mod_imagemap - mod_cern_meta - mod_ident See thread at http://mail-archives.apache.org/mod_mbox/httpd-dev/201107.mbox/%3C201107052321.56063.sf@sfritsch.de%3E git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@1146227 13f79535-47bb-0310-9956-ffa450edef68
* solve getpid() process.h function orderWilliam A. Rowe Jr2011-05-312-7/+8
| | | | git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@1129914 13f79535-47bb-0310-9956-ffa450edef68
* Fix two bugs introduced by r1070153Stefan Fritsch2011-02-131-7/+8
| | | | git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@1070317 13f79535-47bb-0310-9956-ffa450edef68
* Use ap_state_query() to fix many modules that were not correctly initializingStefan Fritsch2011-02-121-3/+5
| | | | | | | | | if they were not active during server startup but got enabled later during a graceful restart (in which case they need to do all work during a single config run). git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@1070153 13f79535-47bb-0310-9956-ffa450edef68