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

231 Commits

Author SHA1 Message Date
Joe Orton
c5f0781f16 * include/httpd.h (conn_state_e): Remove trailing comma from enum.
Submitted by: Per Olausson <pao darkheim.freeserve.co.uk>
PR: 37840


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@355143 13f79535-47bb-0310-9956-ffa450edef68
2005-12-08 17:12:36 +00:00
Brian Pane
05537e381e New version of ap_core_output_filter that does nonblocking writes
(backport from async-dev branch to 2.3 trunk)


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@327872 13f79535-47bb-0310-9956-ffa450edef68
2005-10-23 22:38:35 +00:00
Brian Pane
4db6998015 Add new connection states for handler and write completion
(backport from async-dev branch to 2.3 trunk)


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@327870 13f79535-47bb-0310-9956-ffa450edef68
2005-10-23 22:20:59 +00:00
Jim Jagielski
d81de0d9b3 Add ap_append_pid(); This is performed enough to warrant
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
2005-08-31 15:22:08 +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
Rich Bowen
6efa778213 As discussed on the list, change the default setting for
KeepAliveTimeout from 15 seconds to 5 seconds.


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@161140 13f79535-47bb-0310-9956-ffa450edef68
2005-04-13 01:21:11 +00:00
Paul Querna
e2d4550b9d *) include/httpd.h: Add a brigade for temporary uses in the core input filter context.
*) server/core_filters.c: Do not use brigade_split, since it allocates a new brigade. Instead move buckets to our tmpbb, and reuse the tmpbb for every call.

PR: 33382


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@154200 13f79535-47bb-0310-9956-ffa450edef68
2005-02-17 22:53:07 +00:00
Joe Orton
1184182659 * include/httpd.h: Fix a comment.
git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@153408 13f79535-47bb-0310-9956-ffa450edef68
2005-02-11 15:03:12 +00:00
Joe Orton
27759dec9a * include/ap_regex.h: Include apr.h not stdlib.h; replace pointless
regoff_t typedef with int; s/size_t/apr_size_t/;.  Comment fixes.

* server/util_pcre.c: s/size_t/apr_size_t/.

* include/httpd.h: Include stdlib.h here instead since many other
files assume it was included by httpd.h at some point.


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@153407 13f79535-47bb-0310-9956-ffa450edef68
2005-02-11 14:57:34 +00:00
Joe Orton
a0570c8746 Move the POSIX reg* implementations into the ap_* namespace;
internalise the ap_reg*<->PCRE wrapper:

* configure.in: Add srclib/pcre to the include path.

* include/ap_regex.h: Renamed from include/pcreposix.h.  Prefix all
constants with AP_; prefix all functions and types with ap_.  Define
AP_DECLARE to nothing if necessary.  Remove regcomp error codes.

* include/httpd.h: Include ap_regex.h not pcreposix.h.
(ap_pregcomp, ap_regexec, ap_regfree): s/regex_t/ap_regex_t/.
(ap_regexec, ap_regerror): Prototypes moved to ap_regex.h.

* server/util.c (regex_cleanup, ap_pregcomp, ap_pregsub, ap_pregfree):
Adjust for ap_ prefixed types.  (ap_regexec, ap_regerror): Removed.

* server/Makefile.in: Build util_pcre.c.

* server/util_pcre.c: Copied from srclib/pcre/pcreposix.c; remove use
of PCRE-internals to do error mapping; rename types to add AP_/ap_
prefixes as above.  Use APR includes.  (ap_regerror): Use apr_snprintf.

* srclib/pcre/Makefile.in: Don't build pcreposix.c into libpcre.la.

* modules/*: Update to use new type and constant names.

PR: 27750 (part one)
Submitted by: Andres Salomon <dilinger voxel.net>, Joe Orton


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@153384 13f79535-47bb-0310-9956-ffa450edef68
2005-02-11 12:00:41 +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
William A. Rowe Jr
d962fcfc8b FINALLY Correct ap_http_method()! It is NOT a method, it's a SCHEME!
Bumped mmn, and ap module cookie, for this function rename.

  It's not a deprecation, as ap_http_method would be a lovely function
  name sometime in the future: to determine what the function name implies.


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@123882 13f79535-47bb-0310-9956-ffa450edef68
2005-01-02 05:33:44 +00:00
Geoffrey Young
78c1d9dc3e undo changes made in 111386 due to veto
git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@111432 13f79535-47bb-0310-9956-ffa450edef68
2004-12-09 21:09:26 +00:00
Geoffrey Young
fe1bfd7775 add response code 226 constant (HTTP_IM_USED) and status
line ("226 IM Used").  PR 31128.


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@111386 13f79535-47bb-0310-9956-ffa450edef68
2004-12-09 14:16:16 +00:00
William A. Rowe Jr
2ecaddd6a1 Revert my patch of this a.m. while I work out all the
potential forward declaration pitfalls.


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@106955 13f79535-47bb-0310-9956-ffa450edef68
2004-11-29 21:34:41 +00:00
William A. Rowe Jr
d6a9f1c620 Usage was inconsistent with the rest of ap_filter_t examples;
we always presume the typedef'fed flavor of such symbol names.


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@106932 13f79535-47bb-0310-9956-ffa450edef68
2004-11-29 17:41:49 +00:00
Paul Querna
34959f29db The Event MPM.
Designed to minimize Apache's KeepAlive overhead.

This MPM depends on the current APR-trunk for new features added to 
the apr_pollset interface. Currently the underlying operating
system must support KQueue or EPoll.

Status:
  Should work as a drop in replacement for all non-ssl servers.
  SSL Requests that use HTTP 1.1 Pipelining do not currently work.

Testing:
  I have tested it with Linux 2.6, FreeBSD 5.2.1, and OS X 10.3.
  
Originally based on the patch by Greg Ames.


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@105919 13f79535-47bb-0310-9956-ffa450edef68
2004-11-20 02:52:36 +00:00
Roy T. Fielding
c76dd4ecef veto and revert win64 patch: 64bit changes must percolate from the
bottom (APR/system) up -- we can't give the client a 64bit API and
then cast it to 32bits internally without introducing security holes
on other platforms.


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@105572 13f79535-47bb-0310-9956-ffa450edef68
2004-10-23 22:39:53 +00:00
Allan K. Edwards
6c775f9a3c WIN64: API changes to clean up Windows 64bit compile warnings
git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@105545 13f79535-47bb-0310-9956-ffa450edef68
2004-10-22 15:22:05 +00:00
Stas Bekman
d60aa10075 correct struct fields comments
PR:
Obtained from:
Submitted by:
Reviewed by:


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@104633 13f79535-47bb-0310-9956-ffa450edef68
2004-08-12 05:22:59 +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
Joe Orton
995a925a3f * include/httpd.h: Double DYNAMIC_MODULE_LIMIT, httpd alone includes
about 60 modules already.


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@102777 13f79535-47bb-0310-9956-ffa450edef68
2004-02-26 13:32:34 +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
02bc2a93e8 Add core version query function ap_get_server_revision and
accompanying ap_version_t structure (minor MMN bump).
The function is similar to apr_version() and allow for exact
querying of the core revision level.


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@102405 13f79535-47bb-0310-9956-ffa450edef68
2004-01-25 22:03:38 +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
André Malo
c4511308ee fix docco
git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@102058 13f79535-47bb-0310-9956-ffa450edef68
2003-12-14 16:34:18 +00:00
André Malo
a7db87b9ad SECURITY [CAN-2003-0020]: escape arbitrary data before writing into the
errorlog.

Reviewed by: Mark J Cox


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@101873 13f79535-47bb-0310-9956-ffa450edef68
2003-11-24 21:34:38 +00:00
Cliff Woolley
e269230c3b fix comment
Submitted by:	Fitz


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@101870 13f79535-47bb-0310-9956-ffa450edef68
2003-11-24 16:08:44 +00:00
André Malo
1694aa9b06 - add XHTML doctypes to httpd.h
- fix the (x)html output of mod_autoindex to be consistent
  and make it configurable to emit either HTML or XHTML

PR: 23747


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@101683 13f79535-47bb-0310-9956-ffa450edef68
2003-11-02 20:37:04 +00:00
Sander Striker
67a3a71877 Fold in the CAN-2003-0542 regex patch.
git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@101556 13f79535-47bb-0310-9956-ffa450edef68
2003-10-24 16:20:28 +00:00
André Malo
870b126a01 fix misleading ap_get_token description
git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@101014 13f79535-47bb-0310-9956-ffa450edef68
2003-08-19 12:00:13 +00:00
Greg Stein
72c0032db6 Use 'expected' rather than 'exp', as the latter shadows the exp()
function in the math.h header. Some compilers don't like that.

Submitted by: Blair Zajac <blair@orcaware.com>
Reviewed by: rbb@rkbloom.net


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@100279 13f79535-47bb-0310-9956-ffa450edef68
2003-06-17 09:45:57 +00:00
Martin Kraemer
ca4f07bcac Porting to BS2000: the antique interface (BS2000Account) no longer exists
git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@99747 13f79535-47bb-0310-9956-ffa450edef68
2003-05-09 21:37:06 +00:00
André Malo
c8185c253b Minor MMN bump:
Forward port: Escape special characters (especially control
characters) in mod_log_config to make a clear distinction between
client-supplied strings (with special characters) and server-side
strings. This was already introduced in version 1.3.25.

Obtained from: Patch in 1.3.25-dev by Martin


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@98912 13f79535-47bb-0310-9956-ffa450edef68
2003-03-06 23:53:52 +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
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
Ken Coar
12b11896a7 here we go. add a directive that will keep %2f from being
decoded into '/', allowing the *_walk to do their magic and
	return 404 if it's in the path, and allowing it in the path-info.


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@98479 13f79535-47bb-0310-9956-ffa450edef68
2003-01-23 21:34:13 +00:00
André Malo
fe5980e409 move rfc1413 code to a new module "metadata:mod_ident".
The rfc1413 code itself is mostly c&p, but can still bear
some rework ...

This patch removes the global ap_rfc1413 function and the
ap_rfc1413_timeout variable. It also introduces a new config
directive IdentityCheckTimeout (default 30 sec).

Reviewed by: Justin Erenkrantz


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@98320 13f79535-47bb-0310-9956-ffa450edef68
2003-01-18 03:37:55 +00:00
Greg Ames
1576999f17 use a subpool of c->pool for resources which are set aside, then clear it
after writing the data to the network.  This closes files sooner with
keepalive connections.


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@97462 13f79535-47bb-0310-9956-ffa450edef68
2002-11-08 17:19:10 +00:00
Ryan Bloom
37f9061757 Fix a compile of compiler warnings. I don't know how these slipped past.
Also, uncomment a line of code that the last commit should have uncommented.
Randall found this line and the fix, but I forgot to uncomment this line
along with the fix.


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@97179 13f79535-47bb-0310-9956-ffa450edef68
2002-10-11 15:29:22 +00:00
William A. Rowe Jr
660bd019fb Bring in os.h after we let apr do its platform foo.
git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@95928 13f79535-47bb-0310-9956-ffa450edef68
2002-07-01 17:49:53 +00:00
Justin Erenkrantz
001b387bcd Change conn_rec->keepalive to an enumerated value of
AP_CONN_UNKNOWN
AP_CONN_CLOSE
AP_CONN_KEEPALIVE

This also fixes a problem where ap_discard_request_body would not discard
the body when keepalive was 0.  This actually meant the keepalive status
was unknown *not* closed, but no one ever remembered that.

This problem was seen with mod_dav sending error responses (as reported by
Karl Fogel).

Suggested by:	Greg "this isn't the '80s" Stein
Reviewed by:	Greg Ames


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@95891 13f79535-47bb-0310-9956-ffa450edef68
2002-06-26 19:45:07 +00:00
Brian Pane
b2fe8e6f27 Removed "tolower(++s)" idiom from ap_strcasestr(), to avoid side-effects
on any platform with a macro-based tolower() that references its argument
multiple times.


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@95867 13f79535-47bb-0310-9956-ffa450edef68
2002-06-23 09:01:22 +00:00
Aaron Bannert
1c58975c55 Improve on some of the documentary comments in the request_rec.
git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@95700 13f79535-47bb-0310-9956-ffa450edef68
2002-06-15 19:19:42 +00:00
William A. Rowe Jr
7af68c0bf5 Solve the 80/20 by initializing and storing server_rec->timeout and
server_rec->keep_alive_timeout in apr_time_interval_t format (in apr
  units, whatever they be), as both values exist to pass into APR, and
  all APR timeouts are in apr_time_t.

Reviewed by:	Cliff Woolley


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@95623 13f79535-47bb-0310-9956-ffa450edef68
2002-06-12 23:59:31 +00:00
Justin Erenkrantz
5607afff2b Add a PROXYREQ_RESPONSE value for request_rec->proxyreq because it is
possible that there can be different behavior at the protocol level if
request_rec isn't really a request but a response.

This stems from the fact that request bodies must be indicated by
Content-Length or Transfer-Encoding, but response bodies do not.  The
recent change to ap_http_filter to return EOS if there isn't a body broke
proxy.  Therefore, there must be some way for the proxy to indicate that
this is a response.  Accordingly, ap_http_filter can allow the BODY_NONE
iff this is a response.

Since r->proxyreq is set to PROXYREQ_PROXY even for the original request
from the client, that value isn't sufficient.  Hence, the introduction of
PROXYREQ_RESPONSE.


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@95390 13f79535-47bb-0310-9956-ffa450edef68
2002-05-30 07:04:45 +00:00
Justin Erenkrantz
105cb01305 Rewrite ap_byterange_filter so that it can work with data that does not
have a predetermined C-L - such as data that passes through mod_include.
Previously, these requests would generate 416 since when the byterange
filter ran, r->clength would be 0.  r->clength is only guaranteed to
be valid after C-L filter is run, but we need C-L to run after us so
that our data can have a proper C-L returned.  So, we need to rearrange
the code so that we can deal with this case.

Highlights:
- Remove r->boundary since it is possible to have this self-contained in
  boundary's ctx.  (May require MMN bump?)
- Remove call to parse_byteranges in ap_set_byterange since this would
  wrongly return -1 for dynamic responses.  We have to wait until we
  see EOS to call parse_byteranges.
- Move bound_head computation inside the num_parts == 2 check.
- Change a NULL brigade check to APR_BRIGADE_EMPTY
- Move the 416 error return to after we've run through all ranges and
  found none of them to be valid.


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@94942 13f79535-47bb-0310-9956-ffa450edef68
2002-05-06 07:43:40 +00:00
Cliff Woolley
3e2ce19baf BUCKET FREELISTS
Add an allocator-passing mechanism throughout the bucket brigades API.

From Apache's standpoint, the apr_bucket_alloc_t* used throughout a given
connection is stored in the conn_rec by the create_connection hook.  That
means it's the MPM's job to optimize recycling of apr_bucket_alloc_t's --
the MPM must ensure that no two threads can ever use the same one at the
same time, for instance.


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@94304 13f79535-47bb-0310-9956-ffa450edef68
2002-03-29 08:17:26 +00:00