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

875 Commits

Author SHA1 Message Date
Joe Orton
ac40284b85 * modules/http/byterange_filter.c (ap_byterange_filter): Refuse to
byterange any response which may require the consumption of arbitrary
amounts of memory.

(functional changes split from whitespace/reflow changes which will
follow in a separate commit)

Reviewed by: jerenkrantz (several moons ago)
PR: 29962


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@188797 13f79535-47bb-0310-9956-ffa450edef68
2005-06-07 15:32:10 +00:00
Jeff Trawick
e9323f0ebd EBCDIC: Handle chunked input from client or, with proxy, origin
server.


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@178262 13f79535-47bb-0310-9956-ffa450edef68
2005-05-24 19:49:06 +00:00
Jeff Trawick
7ae218a5bf Support the suppress-error-charset setting, as with Apache 1.3.x.
With Apache 1.3.x, it is a bit simpler as the request does
not go through ap_make_content_type().

Modules can set custom error responses but not be able to
set the charset, so they have to code the charset in the
html.  Thus, it is useful to preserve 1.3.x behavior exactly.

PR: 26467


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@170354 13f79535-47bb-0310-9956-ffa450edef68
2005-05-16 10:41:42 +00:00
William A. Rowe Jr
20d06d7a06 Reintroduce stack frame construction with /Oy- (removal was implied by /O2).
This makes binaries far easier to debug, during operation and for post-crash
  .dmp analysis.  Do not alter /Gs optimizations per brane.

Reviewed by: stoddard, brane

git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@170253 13f79535-47bb-0310-9956-ffa450edef68
2005-05-15 19:11:57 +00:00
Paul Querna
af9ae7c2d7 Remove ap_method_list_do and ap_method_list_vdo as previously mentioned dev@httpd.
git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@164536 13f79535-47bb-0310-9956-ffa450edef68
2005-04-25 05:19:18 +00:00
Greg Ames
ce90c8338d update comments for *_client_block functions.
note namespace protected function names.  clarify where 100 Continue is sent.  remove 
dire warning for calling ap_should_client_block more than once since side effects
appear to be long gone.


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@158791 13f79535-47bb-0310-9956-ffa450edef68
2005-03-23 16:03:55 +00:00
Sander Striker
9e2046178c More tweaks primarily driven by caching.
* modules/http/http_protocol.c

  (ap_meets_conditions): Allow If-None-Modified and If-Modified-Since
   to interact as described in RFC2616, sections 14.26 and 13.3.4.


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@153270 13f79535-47bb-0310-9956-ffa450edef68
2005-02-10 15:41:23 +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
Jim Jagielski
9e6b472772 Keep track of time taken to process requests again.
git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@149550 13f79535-47bb-0310-9956-ffa450edef68
2005-02-02 19:32:18 +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
Paul Querna
3afc45863a * Style fixes only. No functional changes. Remove two tabs. Fix an If. Split a String.
git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@111719 13f79535-47bb-0310-9956-ffa450edef68
2004-12-13 16:13:06 +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
Joe Orton
671710004d * modules/http/mod_core.h: Prototype ap_http_chunk_filter.
* modules/http/chunk_filter.c (ap_http_chunk_filter): Rename from
chunk_filter.

* modules/http/http_core.c (chunk_filter): Remove the original copy.
(register_hooks): Register ap_http_chunk_filter.


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@109497 13f79535-47bb-0310-9956-ffa450edef68
2004-12-02 13:25:12 +00:00
Justin Erenkrantz
439221058c Initial pass at refactoring some files to eliminate our 150K C source behemoths.
* Makefile.in: Change order of dependencies to bring in exports.o first so that
  we have every symbol 'used' before the linker starts processing.
* build/rules.mk.in: Add a 'program-install' target which just copies httpd.

* server/Makefile.in, modules/http/config2.m4: Add in new file targets.

* NWGNUmakefile, libhttpd.dsp: Blind updates for Netware and Win32.  (I tried.)

* server/core.c: Move core_input_filter, net_time_filter, and core_output_filter  and all supporting functions to...
* server/core_filters.c (copied): ...here.

* modules/http/http_protocol.c: Move functions from here to there...namely:
* modules/http/byterange_filter.c (copied): Relocate ap_byterange_filter() and
  friends.
* modules/http/chunk_filter.c (copied): Relocate chunk_filter().
* modules/http/http_etag.c (copied): Relocate ap_set_etag and ap_make_etag().
* modules/http/http_filters.c (copied): Relocate ap_http_filter(),
  ap_http_header_filter(), ap_discard_request_body(), ap_setup_client_block(),
  ap_should_client_block(), and ap_get_client_block().


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@106692 13f79535-47bb-0310-9956-ffa450edef68
2004-11-27 08:07:44 +00:00
Greg Ames
b5e9415869 ap_process_http_async_connection (used by the Event MPM):
fix CLOSE_WAITs/leaked connections.  The logic to deal with ap_read_request
failures got lost when merging in the HTTP pipelining fix.  If ap_read_request
fails, the connection state should get set to CONN_STATE_LINGER so the MPM will
invoke lingering close.  Test case: client sends a Connection: keepalive header
then closes the connection before the keepalive timeout pops.

Also add a comment to make the pipelining flow more obvious.


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@106662 13f79535-47bb-0310-9956-ffa450edef68
2004-11-26 21:21:42 +00:00
Paul Querna
95d5391b9f Compile Fix for Netware Port with CodeWarrior.
Noticed By: <normw@bocnet.com.au>


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@106072 13f79535-47bb-0310-9956-ffa450edef68
2004-11-21 05:53:38 +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
Joe Orton
c36ecfa64f Remove the .cvsignore files.
git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@105796 13f79535-47bb-0310-9956-ffa450edef68
2004-11-19 09:07:29 +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
Joe Orton
52c225b0db * modules/http/http_protocol.c (ap_http_filter): Always fail if the
Content-Length header is an empty string; previously this was only
an error with some strto* implementations.


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@105341 13f79535-47bb-0310-9956-ffa450edef68
2004-09-29 14:38:42 +00:00
André Malo
254940aec6 use HTML 2.0 <hr>
PR: 30732


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@105162 13f79535-47bb-0310-9956-ffa450edef68
2004-09-15 20:24:19 +00:00
Nick Kew
d37a21d981 Fix Bug 18388 (Set-Cookie in 304)
git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@104924 13f79535-47bb-0310-9956-ffa450edef68
2004-09-01 13:37:07 +00:00
Justin Erenkrantz
c28dfa19f1 * modules/http/http_request.c (ap_internal_redirect): Call quick_handler
when we do an internal redirect to allow caching.  This allows mod_dir
  requests to be cached.

Reviewed by:	Bill Stoddard


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@104446 13f79535-47bb-0310-9956-ffa450edef68
2004-08-02 17:12:32 +00:00
André Malo
9266375e50 parse byteranges correctly using the new apr_strtoff function
git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@103765 13f79535-47bb-0310-9956-ffa450edef68
2004-05-25 19:09:45 +00:00
Joe Orton
2c37f8ffc7 * modules/http/http_protocol.c (ap_setup_client_block,
ap_http_filter): Use new apr_strtoff() to support request bodies as
large as apr_off_t allows (rather than as large as 'long' allows), and
simplify error handling.

PR: 27866


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@103756 13f79535-47bb-0310-9956-ffa450edef68
2004-05-25 14:36:18 +00:00
André Malo
a688f06b19 fix name of The Apache Software Foundation
git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@102618 13f79535-47bb-0310-9956-ffa450edef68
2004-02-09 20:31:03 +00:00
André Malo
d0e05bada9 fix copyright dates according to the first check in
git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@102565 13f79535-47bb-0310-9956-ffa450edef68
2004-02-08 12:07:22 +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
Jeff Trawick
e3f81752cf Build array of allowed methods with proper dimensions, fixing
possible memory corruption.


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@102354 13f79535-47bb-0310-9956-ffa450edef68
2004-01-16 20:11:12 +00:00
André Malo
afc28afde4 internal_fast_redirect: take over important request_rec members
git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@102330 13f79535-47bb-0310-9956-ffa450edef68
2004-01-13 23:59:57 +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
Paul J. Reder
3e85c7882d *) Add a hook (insert_error_filter) to allow filters to re-insert
themselves during processing of error responses. Enable mod_expires
     to use the new hook to include Expires headers in valid error
     responses. This addresses an RFC violation. It fixes PRs 19794,
     24884, and 25123. [Paul J. Reder]


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@102038 13f79535-47bb-0310-9956-ffa450edef68
2003-12-12 17:03:59 +00:00
Cliff Woolley
aaf0424e2b get rid of _FOREACH
git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@101788 13f79535-47bb-0310-9956-ffa450edef68
2003-11-16 02:09:14 +00:00
Jeff Trawick
32044c1ca5 fix the EBCDIC path in send_all_header_fields() to actually return something
the caller ignores it, but still...


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@101784 13f79535-47bb-0310-9956-ffa450edef68
2003-11-15 21:42:17 +00:00
André Malo
be807cff9a add a comment
git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@101678 13f79535-47bb-0310-9956-ffa450edef68
2003-11-02 12:21:33 +00:00
Jeff Trawick
0c3c5b7145 Set the scoreboard state to indicate logging prior to running
logging hooks so that server-status will show 'L' for hung loggers
instead of 'W'.


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@101517 13f79535-47bb-0310-9956-ffa450edef68
2003-10-22 16:45:53 +00:00
Justin Erenkrantz
4c6709cf92 Resolve the ap_get_client_block() showstopper by looking at APR_BRIGADE_LAST
of what we get from ap_get_brigade and set a nugget for our next call to
pick up on.


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@101141 13f79535-47bb-0310-9956-ffa450edef68
2003-08-31 16:14:39 +00:00
Jeff Trawick
099e61ebdc Don't respect the Server header field as set by modules and CGIs.
As with 1.3, for proxy requests any such field is from the origin
server; otherwise it will have our server info as controlled by
the ServerTokens directive.


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@100182 13f79535-47bb-0310-9956-ffa450edef68
2003-06-06 02:48:55 +00:00
André Malo
8dd8543053 Rework of the recursion stopper - collapse recursion counters into one function
Reviewed by: Justin Erenkrantz


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@100095 13f79535-47bb-0310-9956-ffa450edef68
2003-05-29 23:04:32 +00:00
André Malo
b2b035253f - revert my patch (r1.155) since it produces regressions.
- add a note to STATUS that we don't forget the thing.


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@100086 13f79535-47bb-0310-9956-ffa450edef68
2003-05-29 15:07:12 +00:00
André Malo
1af02389bb Prevent the server from crashing when entering infinite loops. The
new LimitInternalRecursion directive configures limits of subsequent
internal redirects and nested subrequests, after which the request
will be aborted.
[William Rowe, Jeff Trawick, Andr� Malo]

PR: 19753 (and probably others)


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@99911 13f79535-47bb-0310-9956-ffa450edef68
2003-05-19 01:19:55 +00:00
Martin Kraemer
36455c38a6 Porting EBCDIC: headers wer incorrectly (i.e., not) converted
git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@99748 13f79535-47bb-0310-9956-ffa450edef68
2003-05-09 21:37:55 +00:00
Jeff Trawick
491b134846 back out a recent change which causes the server to segfault or
otherwise fail, until such time that it can be fixed properly


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@99612 13f79535-47bb-0310-9956-ffa450edef68
2003-04-26 02:24:48 +00:00
Jeff Trawick
013339e87d fix some discrepancies between format strings and arguments,
resolving some warnings on 64-bit systems


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@99374 13f79535-47bb-0310-9956-ffa450edef68
2003-04-15 22:47:58 +00:00
Graham Leggett
e3befc624e If a Date response header was already set in the headers array,
this value was ignored in favour of the current time. This meant
that Date headers on proxied requests where rewritten when they
should not have been.
PR:		14376
Obtained from:
Submitted by:
Reviewed by:


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@99370 13f79535-47bb-0310-9956-ffa450edef68
2003-04-15 17:39:43 +00:00
André Malo
986cb6b961 Do not bypass output filters when redirecting subrequests internally.
PR: 17629


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@99042 13f79535-47bb-0310-9956-ffa450edef68
2003-03-22 22:15:40 +00:00
William A. Rowe Jr
281948b722 After discussions at length on dev@apr/httpd, it is determined that
the older .dbg format symbols are not worth the interference with
  generating complete .pdb symbolic debugging databases.

  This patch further eliminates pdbtype:sept flags that interfere with
  deciphering local symbols and type information.


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@98970 13f79535-47bb-0310-9956-ffa450edef68
2003-03-11 00:58:59 +00:00
Jeff Trawick
f03fc13861 Keep the subrequest filter in place when a subrequest is
redirected.

PR: 15423


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@98778 13f79535-47bb-0310-9956-ffa450edef68
2003-02-24 00:57:40 +00:00