summaryrefslogtreecommitdiff
Commit message (Collapse)AuthorAgeFilesLines
* Use the new APR_POLLSET_NOCOPY option when creating the core pollset.async-devBrian Pane2005-10-231-9/+9
| | | | | | | | | This eliminates the descriptor copying and mutex operations, and O(n)-time apr_pollset_remove() loop when used with an apr_pollset implementation that support the no-copy optimization. git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/branches/async-dev@327757 13f79535-47bb-0310-9956-ffa450edef68
* forward-port MMN from trunk to async-dev branch so MMN-dependent ↵Brian Pane2005-10-161-1/+2
| | | | | | perl-framework tests will compile git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/branches/async-dev@321517 13f79535-47bb-0310-9956-ffa450edef68
* more verbose error message on write completion errorBrian Pane2005-10-101-1/+1
| | | | git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/branches/async-dev@312539 13f79535-47bb-0310-9956-ffa450edef68
* Enabled async write completion in the Event MPMBrian Pane2005-10-102-11/+47
| | | | git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/branches/async-dev@312536 13f79535-47bb-0310-9956-ffa450edef68
* Added a missing return value in ap_core_output_filterBrian Pane2005-10-101-1/+1
| | | | git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/branches/async-dev@312532 13f79535-47bb-0310-9956-ffa450edef68
* Fixed processing of pipelined requestsBrian Pane2005-10-091-0/+2
| | | | git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/branches/async-dev@312512 13f79535-47bb-0310-9956-ffa450edef68
* Refactored CONN_STATE_WRITE_COMPLETION handling.Brian Pane2005-10-091-2/+14
| | | | git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/branches/async-dev@307380 13f79535-47bb-0310-9956-ffa450edef68
* Update new conn_rec field "data_in_output_filters" in core output filterBrian Pane2005-10-093-28/+52
| | | | | | | so async MPMs can tell whether to keep polling and writing git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/branches/async-dev@307379 13f79535-47bb-0310-9956-ffa450edef68
* cleaned up the timeout management in ap_core_output_filter()Brian Pane2005-10-091-20/+27
| | | | git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/branches/async-dev@307371 13f79535-47bb-0310-9956-ffa450edef68
* Refactored ap_process_request() so that in async MPMs, the MPM (and notBrian Pane2005-10-095-52/+64
| | | | | | | | | | | | | | | | | the httpd core) is responsible for write completion. Note that, with this commit, the Event MPM is still doing write completion synchronously. I'll add async write completion as a separate commit. Note also that this commit breaks the (experimental) Leader/Followers MPM on the (equally experimental) async-dev branch. The fix is to add either synchronous or asynchronous write completion to that MPM. Rather than hack in synchronous write completion, I'll revisit Leader/Followers once I have async working in Event. git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/branches/async-dev@307362 13f79535-47bb-0310-9956-ffa450edef68
* Forward-port of revision 307355 to async-dev branch:Brian Pane2005-10-091-1/+1
| | | | | | | Correct an out-of-date comment git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/branches/async-dev@307356 13f79535-47bb-0310-9956-ffa450edef68
* Simplified mod_logio to take advantage of the delayed invocation ofBrian Pane2005-10-091-17/+1
| | | | | | | the logger. git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/branches/async-dev@307346 13f79535-47bb-0310-9956-ffa450edef68
* Added mod_logio hooks to the new, nonblocking version ofBrian Pane2005-10-091-9/+22
| | | | | | | ap_core_output_filter() git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/branches/async-dev@307344 13f79535-47bb-0310-9956-ffa450edef68
* Redesign of request cleanup:Brian Pane2005-10-096-5/+114
| | | | | | | | | | | | | | | | | | - A new End-Of-Request bucket is pushed through the output filter chain after the last bucket of the response. - This bucket gets destroyed by ap_core_output_filter() after the buckets in front of it have been sent. - The destroy callback of the EOR bucket invokes the access logger and frees the request's pool. With this change, the request logger now runs after the last byte of the response is _sent_, rather than after the last byte of the response is _generated_. This should make the bytes-sent count in the access log more accurate in cases where the client closes the connection midway through the sending of the response. git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/branches/async-dev@307339 13f79535-47bb-0310-9956-ffa450edef68
* Forward-port of the latest event MPM code from the 2.3-dev trunk intoBrian Pane2005-10-083-56/+7
| | | | | | | the async-dev branch git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/branches/async-dev@307334 13f79535-47bb-0310-9956-ffa450edef68
* Forward-port of wrowe's NET_TIME filter removal/refactor intoBrian Pane2005-10-066-89/+55
| | | | | | | | | the async-dev branch, in preparation for developing async write completion in this branch on top of the new timeout design. http://svn.apache.org/viewcvs.cgi?rev=306495&view=rev git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/branches/async-dev@306541 13f79535-47bb-0310-9956-ffa450edef68
* port the fix for PR35292 forward from the 2.3 trunk to the async-dev branch, ↵Brian Pane2005-10-061-17/+19
| | | | | | because one of the perl-framework test cases now checks for this fix git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/branches/async-dev@306540 13f79535-47bb-0310-9956-ffa450edef68
* forward-port the latest versions of mod_ssl and mod_setenvif from the 2.3 ↵Brian Pane2005-10-0616-264/+403
| | | | | | trunk to the async-dev branch so t/TEST will work once again git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/branches/async-dev@306538 13f79535-47bb-0310-9956-ffa450edef68
* New version of ap_core_output_filter...Brian Pane2005-09-254-557/+338
| | | | | | | | | | | The big change is that it now does nonblocking writes when possible. The goal of this redesign is to more cleanly support asynchronous write completion in MPMs such as Event or Leader. However, the nonblocking writes may also help in Worker and Prefork by allowing more overlapping of handler and output filter processing with network writes. git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/branches/async-dev@291377 13f79535-47bb-0310-9956-ffa450edef68
* doh!Brian Pane2005-09-251-1/+2
| | | | git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/branches/async-dev@291375 13f79535-47bb-0310-9956-ffa450edef68
* Ported fix for PR35330 forward from the trunk (This particular patch doesn'tBrian Pane2005-09-251-3/+2
| | | | | | | | | interact with the async R&D, but I'm merging it into the async-dev branch because there's now a test case specifically for this change in httpd-test/perl-framework.) git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/branches/async-dev@291354 13f79535-47bb-0310-9956-ffa450edef68
* Added asynchronous keep-alive support to the leader MPM...Brian Pane2005-09-125-403/+511
| | | | | | | | | the new io_multiplexer object is intended to provide a foundation for async processing of the other connection states. git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/branches/async-dev@280222 13f79535-47bb-0310-9956-ffa450edef68
* Added new connection states CONN_STATE_HANDLER and CONN_STATE_WRITE_COMPLETION.Brian Pane2005-09-124-4/+22
| | | | | | | | Also, core_create_conn() now initializes the conn_state within the newly created connection. git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/branches/async-dev@280221 13f79535-47bb-0310-9956-ffa450edef68
* *) Create an optional function and MPM Query to replace the core output filter.Paul Querna2005-09-057-5/+74
| | | | | | | *) Put an example of using it into the Event MPM, which just calls the original core output filter. git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/branches/async-dev@278652 13f79535-47bb-0310-9956-ffa450edef68
* Create a new development branch to test ideas on async operation of httpd.Paul Querna2005-09-050-0/+0
| | | | git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/branches/async-dev@278647 13f79535-47bb-0310-9956-ffa450edef68
* Introduce SSLProxyVerify better. Add a warning note on exactlyJoe Orton2005-09-011-8/+23
| | | | | | | | what verification is done by the proxy in the proxy-to-SSL-server case. git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@265741 13f79535-47bb-0310-9956-ffa450edef68
* httpd.exe/apachectl -V: display the DYNAMIC_MODULE_LIMIT settingJeff Trawick2005-09-012-0/+5
| | | | | | | (1.3 has done that for a while) git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@265737 13f79535-47bb-0310-9956-ffa450edef68
* * modules/ssl/ssl_util_ssl.c (SSL_X509_STORE_create): Catch errorsJoe Orton2005-09-011-4/+7
| | | | | | | | | | | returned by X509_LOOKUP_add_dir or X509_LOOKUP_load_file to detect malformed or misconfigured CRLs. Clear error stack beforehand to ensure reported errors are relevant. PR: 36438 git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@265702 13f79535-47bb-0310-9956-ffa450edef68
* * server/listen.c (open_listeners): Avoid shadowing the 'next'Joe Orton2005-09-011-1/+1
| | | | | | | variable at function-scope. git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@265701 13f79535-47bb-0310-9956-ffa450edef68
* Initiliase all of the first_*_limit variables to zero, so that we can actuallyColm MacCarthaigh2005-08-314-7/+7
| | | | | | | | raise limits beyond their defaults reliably. git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@265523 13f79535-47bb-0310-9956-ffa450edef68
* Revert one part. I should have tested seperately. This line isn't neccessary.Colm MacCarthaigh2005-08-311-1/+1
| | | | git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@265519 13f79535-47bb-0310-9956-ffa450edef68
* Actually allow the admin to set thread_limit higher than the default. Colm MacCarthaigh2005-08-311-3/+3
| | | | | | | | | Also, initialise the first_ variables, since they are tested in the set_ functions. git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@265518 13f79535-47bb-0310-9956-ffa450edef68
* Add ap_append_pid(); This is performed enough to warrantJim Jagielski2005-08-315-10/+33
| | | | | | | | | a function I think, especially with the fact that the mapping of getpid() to APR_PID_T_FMT isn't consistant in some areas. git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@265506 13f79535-47bb-0310-9956-ffa450edef68
* Some simple debugging log entriesJim Jagielski2005-08-311-1/+10
| | | | git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@265505 13f79535-47bb-0310-9956-ffa450edef68
* More getpid format fixesJim Jagielski2005-08-311-4/+4
| | | | git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@265504 13f79535-47bb-0310-9956-ffa450edef68
* Consistantly use APR_PID_T_FMT for getpid valueJim Jagielski2005-08-311-5/+5
| | | | git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@265049 13f79535-47bb-0310-9956-ffa450edef68
* Start of getpid()/%d confusion fix...Jim Jagielski2005-08-311-41/+44
| | | | git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@265047 13f79535-47bb-0310-9956-ffa450edef68
* mod_log_config: %{hextid}P will log the thread id in hex with APRJeff Trawick2005-08-313-3/+16
| | | | | | | versions 1.2.0 or higher. git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@265033 13f79535-47bb-0310-9956-ffa450edef68
* * server/main.c (suck_in_APR): Remove weird gzeof reference whichJoe Orton2005-08-301-1/+0
| | | | | | | broke all the -Werror builds. git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@264886 13f79535-47bb-0310-9956-ffa450edef68
* Make my PR references consistent with everyone elses.Colm MacCarthaigh2005-08-301-2/+2
| | | | git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@264881 13f79535-47bb-0310-9956-ffa450edef68
* mod_cgid: Refuse to work on Solaris 10 due to OS bugs.Justin Erenkrantz2005-08-302-1/+23
| | | | | | | PR: 34264 git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@264866 13f79535-47bb-0310-9956-ffa450edef68
* Fix CVE CAN-2005-2700:Joe Orton2005-08-302-2/+7
| | | | | | | | | | | | | | * modules/ssl/ssl_engine_kernel.c (ssl_hook_Access): Ensure that renegotiation is performed for a transition from "SSLVerifyClient optional" to "SSLVerifyClient require". The boolean "verify_old & SSL_VERIFY_PEER_STRICT" is true if the old context merely has optional verification configured, since the definition of SSL_VERIFY_PEER_STRICT is (SSL_VERIFY_FAIL_IF_NO_PEER_CERT | SSL_VERIFY_PEER). git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@264800 13f79535-47bb-0310-9956-ffa450edef68
* If uid_t and gid_t are unsigned on a platform (hurd, for example), using -1Colm MacCarthaigh2005-08-301-1/+1
| | | | | | | | may cause a compiler warning. git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@264788 13f79535-47bb-0310-9956-ffa450edef68
* Fix PR36410; Change how the get_suexec_identity hook is handled by CGID.Colm MacCarthaigh2005-08-302-55/+47
| | | | | | | | | | | | | | | | | | | | | | Instead of using mod_userdir and mod_suexec specific hacks, we now run the hook on the httpd side of the handler. If this is NULL, we pass on a magic empty_ugid constant, otherwise pass on the real ugid. On the cgid side of the equation, we add our own hook, with REALLY_FIRST, and then order the hooks. This ensures that cgid's doer runs before any other registered get_suexec_identity doers. We use cgid's request config to store the ugid. If ugid == empty_ugid, we DON'T call ap_os_create_privileged_process, because our doer would return the magic empty_ugid constant. Having the doer return NULL is no good, because then userdir and mod_suexec's doers would be called. Instead, we call plain old apr_proc_create(). git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@264759 13f79535-47bb-0310-9956-ffa450edef68
* Fix a grammar mistake; note what happens when the timeout isJoe Orton2005-08-301-2/+4
| | | | | | | reached. git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@264737 13f79535-47bb-0310-9956-ffa450edef68
* Correct mod_cgid's argv[0] so that the full path can be delved by theWilliam A. Rowe Jr2005-08-292-5/+6
| | | | | | | | | | | | invoked cgi application, to conform to the behavior of mod_cgi. PR: 34542 Reviewed by: Andre, OtherBill Submitted by: Pradeep Kumar S <pradeep.smani gmail.com> git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@264623 13f79535-47bb-0310-9956-ffa450edef68
* Noticed in the development of fips-enabled mod_ssl, when we areWilliam A. Rowe Jr2005-08-291-3/+12
| | | | | | | | configured to support exactly one protocol, use that explicit server and client mechansim to handshake with the client or proxied machine, rather than the generic SSLv23_[client|server]_method(). git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@264621 13f79535-47bb-0310-9956-ffa450edef68
* Implement graceful stop in the event MPM. Implementation is identical toColm MacCarthaigh2005-08-299-18/+88
| | | | | | | | the worker MPM implementation. git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@264105 13f79535-47bb-0310-9956-ffa450edef68
* *how* did I mis-spell that.Colm MacCarthaigh2005-08-292-2/+2
| | | | git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@264104 13f79535-47bb-0310-9956-ffa450edef68
* Move the "GracefulShutdownTimeout" command definition into mpm_commonColm MacCarthaigh2005-08-293-6/+6
| | | | git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@264103 13f79535-47bb-0310-9956-ffa450edef68