1
0
mirror of https://github.com/apache/httpd.git synced 2025-06-06 09:01:00 +03:00

134 Commits

Author SHA1 Message Date
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
e88fcf3c64 fix copyright dates according to the first check in
git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@102589 13f79535-47bb-0310-9956-ffa450edef68
2004-02-08 13:58: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
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
Jeff Trawick
0beaea8979 spell check
git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@101822 13f79535-47bb-0310-9956-ffa450edef68
2003-11-20 21:31:59 +00:00
André Malo
1a7767b782 Let mod_autoindex show filenames containing special chars like %.
PR: 13598


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@101659 13f79535-47bb-0310-9956-ffa450edef68
2003-11-01 22:29:42 +00:00
Jeff Trawick
45384da23b tag the pools created for requests and subrequests
git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@101441 13f79535-47bb-0310-9956-ffa450edef68
2003-10-13 23:43:00 +00:00
Jeff Trawick
aa21671e13 switch to APR 1.0 API (which is still in flux)
because of the changes to the argument lists of apr_mmap_dup and apr_socket_create,
2.1-dev won't build with apr and apr-util's 0.9 branch anymore


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@101154 13f79535-47bb-0310-9956-ffa450edef68
2003-09-03 19:27:12 +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
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
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
André Malo
53b508b387 Fix "Satisfy Any" logic. The access_checker has nothing to do with
auth_type.

Related PR: 9076


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@98516 13f79535-47bb-0310-9956-ffa450edef68
2003-01-28 15:57:38 +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
William A. Rowe Jr
3aacc89dcb Make the code simpler to follow, and perhaps clear up the follow-symlink
bug reports we have seen on bugzilla.  e.g. 14206 etc.


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@97891 13f79535-47bb-0310-9956-ffa450edef68
2002-12-12 07:05:54 +00:00
Jeff Trawick
4660d1f011 core_opts_merge() needs to be static
git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@97385 13f79535-47bb-0310-9956-ffa450edef68
2002-11-03 22:17:32 +00:00
William A. Rowe Jr
a9b4bbe6fe Mr. Trawick was dead on, and this revealed a much bigger bug.
Factor out the opts/override merging (since we do it three times)
  and eliminate all the nasty goto's.  This bug likely caused all
  sorts of dir_walk configuration issues including htaccess issues.
  Also add a few more docs where things aren't so obvious.

PR: 14147


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@97380 13f79535-47bb-0310-9956-ffa450edef68
2002-11-01 20:49:13 +00:00
Jeff Trawick
e44cb38a9e no such thing as AP_ASSERT()
there is ap_assert() and AP_DEBUG_ASSERT()


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@97375 13f79535-47bb-0310-9956-ffa450edef68
2002-11-01 12:58:30 +00:00
William A. Rowe Jr
22c4e6219f Fix a trailing slash/last filename truncation bug observed on Linux,
which affected DAV MOVE operations and even general file access.
  PR 14147, 10687, 10236 [Dan Good <debug@gooddan.com>]

  I'm accepting Jeff Trawick's suggestion of twisting the test into an
  assert, since it seems very unlikely (after correctly resetting the flag)
  that this will fault.

Reviewed by:  Jeff Trawick, Will Rowe


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@97366 13f79535-47bb-0310-9956-ffa450edef68
2002-11-01 03:27:20 +00:00
Ken Coar
cc2449327a i hate it when tha happens..
git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@97303 13f79535-47bb-0310-9956-ffa450edef68
2002-10-25 16:38:11 +00:00
Ken Coar
7392d9042a more info is better than less..
git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@97302 13f79535-47bb-0310-9956-ffa450edef68
2002-10-25 16:27:38 +00:00
Justin Erenkrantz
b902cb08f8 Morph DONE result from a sub-request handler to OK as DONE is only relevant
when we are the main request.

This fixes a problem with mod_include printing out an error message on DAV
sub-requests because mod_dav will return DONE instead of OK.  This would
result in the correct output merged in with an error string.


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@96642 13f79535-47bb-0310-9956-ffa450edef68
2002-09-05 06:59:14 +00:00
Jeff Trawick
c871b41d3c stop using APLOG_NOERRNO in calls to ap_log_?error()
git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@95149 13f79535-47bb-0310-9956-ffa450edef68
2002-05-17 11:11:39 +00:00
Brian Pane
d6088d4c2e Optimization: skip cache setup in location_walk() if the vhost
config contains no <Location> blocks


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@95044 13f79535-47bb-0310-9956-ffa450edef68
2002-05-12 03:45:47 +00:00
William A. Rowe Jr
e9f0ec41ac A bug affecting any platform that had pre-lstat'ed the file or directory
in question.  We neglected to clear the FINFO_LINK bit that told us this
  was lstat()ed, but also causes stat() to follow an lstat() approach.
  This is part 2 of 2 to correct the NTFS Junction (symlink) bug.

  Bugz report 8014, identified by Sam Morris <sam@netcity.co.uk>


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@94778 13f79535-47bb-0310-9956-ffa450edef68
2002-04-24 04:20:10 +00:00
William A. Rowe Jr
0b0f73b6c8 Formatting irk grinding at me while stepping code
git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@94777 13f79535-47bb-0310-9956-ffa450edef68
2002-04-24 03:52:59 +00:00
William A. Rowe Jr
ab67ee4456 Fix this optimization. We will skip along so long as we aren't at the
right number of components, -or- we mismatch on the current component.


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@94757 13f79535-47bb-0310-9956-ffa450edef68
2002-04-22 17:33:28 +00:00
William A. Rowe Jr
0468e9b273 Small optimization, if we are behind (at the 5th segment, for example),
catch up the segment-count-sorted directory list without string compares.
  Mostly affects win32 which jumps from seg 0 (root) to 4 for UNC path names.


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@94755 13f79535-47bb-0310-9956-ffa450edef68
2002-04-22 16:43:46 +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
Jeff Trawick
0f0bc6e3d7 Allow URIs specifying CGI scripts to include '/' at the end
(e.g., /cgi-bin/printenv/) on AIX and Solaris (and other OSs
which ignore '/' at the end of the names of non-directories).

PR:    10138


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@93952 13f79535-47bb-0310-9956-ffa450edef68
2002-03-15 13:35:42 +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
Bill Stoddard
6752a95e45 Move the quick_handler comment to the new quick handler location. Do not
call quick handler on a dirent subrequest. This fixes a nasty problem in
mod_cache where it was serving up content on a dirent subrequest.


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@93915 13f79535-47bb-0310-9956-ffa450edef68
2002-03-13 19:41:56 +00:00
Sander Striker
4fc0ba5034 Style Police comming through...
git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@93852 13f79535-47bb-0310-9956-ffa450edef68
2002-03-12 09:02:19 +00:00
Ryan Bloom
116497445f Remove the prev pointer from the filter chain. This removes
the complexity of trying to set the filter chain correctly, with the
side-effect of forcing us to walk the entire chain whenever we add
a filter.  Since the filter chains are small, the decrease in
complexity is worth it.
Reviewed by:	Allan Edwards


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@93745 13f79535-47bb-0310-9956-ffa450edef68
2002-03-07 02:09:30 +00:00
Ryan Bloom
349a0b17e4 Only insert net_filter once per request. Initialize the output
protocol filters.


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@93709 13f79535-47bb-0310-9956-ffa450edef68
2002-03-05 05:24:21 +00:00
Ryan Bloom
596d79f14b This fixes most of the header bug that was committed last night. The server
is seg faulting on pipelined requests currently, but I want to get people
back to a running server.


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@93686 13f79535-47bb-0310-9956-ffa450edef68
2002-03-03 22:04:03 +00:00
Ryan Bloom
9ac46ee310 Fix the mod_dir/mod_negotiation bug, where redirects and sub requests
were not getting the correct filters.  This is done by creating a location
in the request rec that holds protocol level filters.  Protocol level
filters survive for one request, from the time the request is received
from the user to the time the response is sent.  r->output_filters now
stores the request level filters, which are only valid for the lifetime
of one request_rec.

This patch works, but it is not complete.  The second half of the problem
is that add_any_filter doesn't check where it puts the filters that it
adds, so it is possible for filters to be put on this wrong list, and
for filters to be lost completely during request processing.  That half
of the fix will be coming in the next day or so.

Submitted by:	Will Rowe, Justin Erenkrantz, Ryan Bloom


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@93682 13f79535-47bb-0310-9956-ffa450edef68
2002-03-03 02:15:52 +00:00
Justin Erenkrantz
4606f607c7 Fix ap_directory_walk() per-dir merge bug seen when no <Directory /> is
present.

showstoppers--

Kudos to Jeff for finding it.
Kudos to BrianP for leading us in the right direction.
Kudos to OtherBill for pointing out the right way to fix this.


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@93425 13f79535-47bb-0310-9956-ffa450edef68
2002-02-15 07:43:20 +00:00
Justin Erenkrantz
38969cf175 Fix resolve_symlink to save the original symlink name if known.
We would previously receive APR_INCOMPLETE on symlinks if wanted has
FINFO_NAME set because it isn't supported via apr_stat().  Furthermore, we
don't care what the real name is anyway (even if it apr_stat returned
.name) - we want to call it by the name the symlink says it is.


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@93328 13f79535-47bb-0310-9956-ffa450edef68
2002-02-07 06:29:57 +00:00
William A. Rowe Jr
011c7375e9 Which PR? I can't count them all. Get QUERY_STRING and PATH_INFO
working again.  Also rounds out our fix to work around negotiated
  directories which Greg Ames fixed; this addition in request.c simply
  shortcuts all further processing.


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@93045 13f79535-47bb-0310-9956-ffa450edef68
2002-01-27 07:44:07 +00:00
Brian Pane
1bef49daa2 optimization: switched to ap_add_output_filter_handle() for installation of
subreq filter


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@93041 13f79535-47bb-0310-9956-ffa450edef68
2002-01-27 02:38:45 +00:00
Greg Ames
a84d8fa149 ap_sub_req_lookup_dirent: fix mod_negotiation loop with near infinite
subrequests

this function has been creating bogus subrequest URIs when there is
path_info for a long time.  They didn't matter until fixup_dir started
using them for URI subrequests, which led to a loop with ever growing
bogus internal URIs and filenames.


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@93035 13f79535-47bb-0310-9956-ffa450edef68
2002-01-26 20:16:01 +00:00
Ian Holsman
9387a9974d These changes are to allow caching of subrequests via a quick_handler.
* Change SUBREQ_CORE so that it is a HTTP_HEADER (20) filter instead of a content filter (10)
  this allows subrequests to add content filters properly

* Change subreq handling of 'handle-include' so that it splits/passes the brigade before the subreq
  is created. (This allows quick_handler to push content back from this phase)


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@92956 13f79535-47bb-0310-9956-ffa450edef68
2002-01-21 01:43:30 +00:00
Ian Holsman
798851f475 code police again
git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@92867 13f79535-47bb-0310-9956-ffa450edef68
2002-01-16 19:14:44 +00:00
Ian Holsman
d2afa1b8c7 sigh.
code style police


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@92865 13f79535-47bb-0310-9956-ffa450edef68
2002-01-16 18:12:52 +00:00
Ian Holsman
6dcd25894c quick handler now runs on subrequests as well
PR:
Obtained from:
Submitted by:
Reviewed by:


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@92862 13f79535-47bb-0310-9956-ffa450edef68
2002-01-16 04:29:10 +00:00
William A. Rowe Jr
5de0159432 Merge a singular path for dir_walk to parse, if we have an r->filename
which is an APR_DIR, and path_info contents.  Also, al la Mr. Pane,
  optimize our canonical_filename by simply noting the length of the
  identity match, and refresh canonical_filename when we are finished.


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@92707 13f79535-47bb-0310-9956-ffa450edef68
2002-01-02 21:58:43 +00:00
William A. Rowe Jr
e88faedf17 Eliminate a duplicate absolute path test, and NEVER serve a request
for an APR_DIR file from the cache when we have path_info, it is a
  contradition (APR_DIR always forces dir_walk to gather the next segment
  from path_info, even if it is APR_NOFILE, until we have no path_info.)

  So we can't use a predetermined filename/path_info combo, ever, if the
  filename resolves to an APR_DIR.


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@92706 13f79535-47bb-0310-9956-ffa450edef68
2002-01-02 21:34:50 +00:00
Brian Pane
4d9b06444e Generalized the recent prep_walk_cache optimizations to allow other
modules to register "notes" within the array of working data in
the core_request_config


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@92697 13f79535-47bb-0310-9956-ffa450edef68
2002-01-01 20:36:18 +00:00
Brian Pane
199e4864fc Performance fix for prep_walk_cache():
Moved the directory/location/file-walk caches from the
request's pool userdata hash table to the core_request_config
struct.

This change removes about 60% of the processing time from
prep_walk_cache().


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@92684 13f79535-47bb-0310-9956-ffa450edef68
2001-12-31 08:18:32 +00:00
William A. Rowe Jr
cf5e402674 Move the insert_filter hook from the prepare request phase to the
invoke handler phase, since it can't fail, and contributes nothing
  to the request 'character', but everything to it's invocation.


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@92471 13f79535-47bb-0310-9956-ffa450edef68
2001-12-14 03:30:23 +00:00