1
0
mirror of https://github.com/apache/httpd.git synced 2026-01-26 19:01:35 +03:00
Commit Graph

157 Commits

Author SHA1 Message Date
Bill Stoddard
d5c24720dc Commit 1 of 2 to:
1. rename ap_rset_content_type to ap_set_content_type
2. reverse the arguments on the call to aligh with ap_set_content_length


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@94056 13f79535-47bb-0310-9956-ffa450edef68
2002-03-20 17:41:55 +00:00
Bill Stoddard
470edb9dd8 First commit to introduce accessor function to set r->content_type..
git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@94027 13f79535-47bb-0310-9956-ffa450edef68
2002-03-20 01:58:47 +00:00
Greg Stein
b9514876c3 The underlying change here was to add the new WebDAV/DeltaV methods
now that it has an RFC. At the same time, I revamped a good chunk of
the name <-> number mapping code in http_protocol.c

* add M_FOO constants for the new RFC 3253 (DeltaV) methods. label
  where each of the builtin methods comes from.

* moved METHOD_NUMBER_FIRST/LAST from http_protocol.h into
  http_protocol.c since they weren't used anywhere else and they
  weren't namespace-protected.

* create register_one_method() and use it to insert all builtin
  methods (at _init() time) and extended methods into the registry.

* add a lookup_builtin_method() to quickly map a method name to a
  builtin method number.

* rebuild ap_method_number_of() to use the new lookup function.

* revamp ap_method_name_of() to use the registry to locate the name
  for any method number. add a pool argument (no callers in the core
  code needed to be updated)

* revamp make_allow() to deal with the new method numbers and all
  extended methods.

* in mod_dav, use the new method numbers rather than registering the
  DeltaV methods.


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@94015 13f79535-47bb-0310-9956-ffa450edef68
2002-03-19 10:11:33 +00:00
Greg Stein
f39844f2e6 Change the REPORT handling APIs to deliver the content directly into
the filter stack, rather than buffering everything into memory(!).


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@94003 13f79535-47bb-0310-9956-ffa450edef68
2002-03-18 22:25:01 +00:00
Bradley Nicholes
5fe463a540 Import file for NetWare
git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@93938 13f79535-47bb-0310-9956-ffa450edef68
2002-03-14 21:10:22 +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
Greg Stein
987b098777 * mod_dav.c (dav_handle_err): look through the error stack for some
kind of errortag.  any buried errortag is better than a generic
    response.

Submitted by: Ben Collins-Sussman <sussman@collab.net>


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@93786 13f79535-47bb-0310-9956-ffa450edef68
2002-03-08 01:22:20 +00:00
Sander Striker
fc9cd645c6 Big style patch.
Mostly detab, but also changed some comments from:
/*
**
*/

to:

/*
 *
 */

The latter is the dominant style in apache.  The only
other places they can be found (AFAIK) are mod_ssl and
mod_rewrite.


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@93773 13f79535-47bb-0310-9956-ffa450edef68
2002-03-07 19:53:31 +00:00
Bradley Nicholes
e6d10bff2d Switching from a project build file to GNU make files
git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@93665 13f79535-47bb-0310-9956-ffa450edef68
2002-03-01 22:21:25 +00:00
Greg Stein
317cd14108 Give mod_dav the ability to output both standard and customized
<D:error> responses.  It's crucial for marshalling svn error messages
back over to the client; and someday it will be needed to return
specific <DAV:> errors as dictated by the DeltaV spec.

* mod_dav.h (dav_error): add two new fields -- an optional error
    namespace, and an error-tag-name.  Remove the 'delayed computation'
    function and cxt ptrs in this struct;  they were never used.

  (dav_new_error_tag):  new alternative constructor that takes new
    fields.

* util.c (dav_new_error_tag):  implement constructor.

* mod_dav.c (dav_error_response_tag):  new function to output
    'standard' xml error response based on error struct.

  (dav_handle_err): if no multistatus response is passed in, and if an
    error-tag is defined, then call our new xml-output routine.

Submitted by: Ben Collins-Sussman <sussman@collab.net>


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@93651 13f79535-47bb-0310-9956-ffa450edef68
2002-03-01 03:25:49 +00:00
Greg Stein
06fc145f72 Get rid of the DAVParam support. That was a concept to help out
mod_dav providers in the 1.0.x series. Nowadays, the providers are
full-fledged Apache modules and can define their own directives and
set up per-server and per-directory parameters. (for example,
mod_dav_fs and the DAVLockDB directive)


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@93348 13f79535-47bb-0310-9956-ffa450edef68
2002-02-09 01:57:38 +00:00
Greg Stein
710eb1ccd4 dav_xml_get_cdata() is an exported function, so mark it as such with
the DAV_DECLARE macro. [ Barry Pederson <barryp@yahoo.com> ]

Apache's handling of ports is broken. Temporarily disable the port
checking in the Destination: header. [ Greg Stein ]


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@92971 13f79535-47bb-0310-9956-ffa450edef68
2002-01-22 19:00:22 +00:00
Greg Stein
9c1b8fe015 If the provider returns an error, then we should propagate it (rather
than override it with HTTP_INTERNAL_SERVER_ERROR).

The specific case observed was a provider issuing a redirect.


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@92937 13f79535-47bb-0310-9956-ffa450edef68
2002-01-20 03:17:12 +00:00
Greg Stein
a065e197e4 Revamp how mod_dav asks its provider to generate a GET response.
* eliminate the get_pathname and free_file vtable functions. add the
    deliver() function to have the provider deliver the content
    straight into a filter [stack].

* eliminate readable streams -- they are now obsolete. this gets rid
    of the read_stream vtable function and DAV_MODE_READ*

* implement a deliver() function for the FS provider. this simply
    constructs a bucket and EOS and shoves them into the filter. note
    that this is debug code only, so the "large file" issue handled by
    the core's default handler doesn't count here.

* allow the provider to handle GET for any resource type and for
    collections. this moves the checks into the provider.


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@92848 13f79535-47bb-0310-9956-ffa450edef68
2002-01-14 13:43:24 +00:00
William A. Rowe Jr
aff1454d34 *) Split all Win32 modules [excluding the core components mod_core,
mod_so, mod_win32 and the winnt mpm] into individual loadable
     modules, so the administrator may individually disable the former
     compiled-in modules by simply commenting out their LoadModule
     directives.  [William Rowe]

  *) Saved Win32 module authors and porters many future headaches, by
     duplicating the appropriate .h files such as os.h into the include
     directory, including in the build tree.  [William Rowe]

  Also noticed that version stamp resources weren't generated for proxy
  modules, this too is now fixed.


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@92804 13f79535-47bb-0310-9956-ffa450edef68
2002-01-10 08:47:23 +00:00
Greg Stein
e312a3c306 Fix how mod_dav examines methods in the request -- use the method number
from the request. To do this, we also need to register all of the new/custom
methods that mod_dav recognizes.

Note: this fixes a bug where a method (e.g. REPORT) would appear in a
Limit(Except) directive and Apache would register the method. The method
number in the request would then be something *other* than M_INVALID, which
threw off mod_dav's tests.

Submitted by: Sander Striker <striker@apache.org>


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@92764 13f79535-47bb-0310-9956-ffa450edef68
2002-01-07 22:36:15 +00:00
Ian Holsman
86b792b21c Modify post_config hook so that it can return a error,
causing the server not to start.
previous method was to call exit(1) which would not fail
gracefully

PR:
Obtained from:
Submitted by:
Reviewed by:	(Idea only Jeff Trawick)


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@92144 13f79535-47bb-0310-9956-ffa450edef68
2001-11-23 16:35:22 +00:00
Ian Holsman
eea38d7c2e This patch changes the apr_table_elts macro so that it provides
access to the internals of an apr_table_t via a const pointer
instead of the current non-const pointer.


Submitted by:	Brian Pane <BPane@pacbell.net>
Reviewed by:	Ian Holsman


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@91860 13f79535-47bb-0310-9956-ffa450edef68
2001-11-11 22:31:04 +00:00
Greg Stein
6c14efd9c8 Don't change the type of the new resource. The provider will update it
when the copy/move takes place.

Specifically, the new location might imply a different type from the
original, so updating the type is bad mojo. In the observed case, a
resource was copied into a working collection; the type of the new
resource is supposed to be WORKING. Copying the type would be wrong if
the source was REGULAR.


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@91732 13f79535-47bb-0310-9956-ffa450edef68
2001-11-02 19:25:50 +00:00
Greg Stein
3c43502494 Get rid of some byterange handling code; it doesn't apply in Apache 2.0.
git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@91374 13f79535-47bb-0310-9956-ffa450edef68
2001-10-09 00:48:51 +00:00
Greg Stein
900a4ce759 Don't set r->status_line. Apache uses that in preference to any other status
line, thinking we've set a custom status. Of course, it says "200 OK" no
matter what error we happen to return(!).


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@91372 13f79535-47bb-0310-9956-ffa450edef68
2001-10-08 23:10:37 +00:00
Greg Stein
6585f132a5 Revamp the API that mod_dav uses to talk to back end deadprop (propdb)
providers. The old API was really based on how the FS stored properties, but
sucked for other types of providers (SQL databases, Subversion, etc). This
new code is overall much cleaner as it moves from a DBM style API to one
tuned for actual mod_dav operation; it also more flexible/clearer for future
improvements (e.g. dropping props directly to the wire rather than buffering
in memory).

This new API allows the provider to better define namespace handling during
the output of the values, how values are serialized and stored, the mapping
between elements' namespaces and the internalized namespace storage, a
clearer mechanism for naming properties (dav_prop_name), and an explicit
rollback mechanism to deal with PROPPATCH atomicity.

Updated the FS provider (fs/dbm.c) to the new API, mostly by moving code
from main/props.c. Of course, with the new semantics, some big changes in
the namespace mapping were made.


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@91065 13f79535-47bb-0310-9956-ffa450edef68
2001-09-18 04:09:19 +00:00
Greg Stein
cda0c40674 Need to store the pool into the xmlns structure.
git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@91063 13f79535-47bb-0310-9956-ffa450edef68
2001-09-18 03:46:13 +00:00
Greg Stein
184f20d86e Add an opaque datatype for managing a set of XML namespace declarations.
Part of an upcoming propdb API improvement.


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@91004 13f79535-47bb-0310-9956-ffa450edef68
2001-09-11 12:29:28 +00:00
William A. Rowe Jr
f0362ccc07 Toggle the /Zi flag to allow all supportd versions of VC (5, 6, 7) to
build 'out of the box' in debugging mode.


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@90686 13f79535-47bb-0310-9956-ffa450edef68
2001-08-26 05:21:50 +00:00
William A. Rowe Jr
b977a59852 Canonicalization will now occur on all sub_req_lookup_file() calls,
and the ap_server_root_relative() will handle canonicalization as well.


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@90566 13f79535-47bb-0310-9956-ffa450edef68
2001-08-23 19:00:07 +00:00
Doug MacEachern
2090fa8748 adjust to apr_uri_ rename
git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@90361 13f79535-47bb-0310-9956-ffa450edef68
2001-08-19 16:01:05 +00:00
Doug MacEachern
d40f9b24be adjust to UNP_ -> APR_URI_UNP_ rename
git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@90359 13f79535-47bb-0310-9956-ffa450edef68
2001-08-19 15:52:59 +00:00
William A. Rowe Jr
6d654c07cd Based on the VC6 switch - and pulling the win32 make files from cvs
- some more ignores are in order.


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@90274 13f79535-47bb-0310-9956-ffa450edef68
2001-08-17 07:19:08 +00:00
William A. Rowe Jr
9062307073 The purpose of this patch is to toggle the debugging mode (default) to
Program Database (from Program Database for Modify on the fly debugging).

  The net effect of this patch is to clean up all of the irrelevant entries
  associated with either the debugging or release command line switches, and
  generally straighten the projects as they would be exported from VC6/SP5.

  The outcome of this patch is that VC5 users -should- be able to load and
  build the workspace without any errors (as they used to have no symbols
  database at all, the /ZI option doesn't work, they had to use cvtdsp.pl
  to toggle these to /Zi.)


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@90269 13f79535-47bb-0310-9956-ffa450edef68
2001-08-17 03:45:35 +00:00
William A. Rowe Jr
9bd41098dd Given a choice between chasing my tail to keep these updated, and rolling
a set when we actually roll a tarball, I'll take the later, thank you.


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@90268 13f79535-47bb-0310-9956-ffa450edef68
2001-08-17 03:23:58 +00:00
William A. Rowe Jr
ebf7a3fe03 Ignore goodness
git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@90250 13f79535-47bb-0310-9956-ffa450edef68
2001-08-16 23:14:06 +00:00
William A. Rowe Jr
b0b0649108 More Versioning
git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@90208 13f79535-47bb-0310-9956-ffa450edef68
2001-08-16 07:54:43 +00:00
Ryan Bloom
6e932b2870 Fix the new method code. We need to cast 1 to an apr_int64_t or it will
be treated as a 32-bit integer, and it will wrap after being shifted
32 times.
Submitted by:	Cody Sherr <csherr@covalent.net> and
		Ryan Morgan <rmorgan@covalent.net>


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@90090 13f79535-47bb-0310-9956-ffa450edef68
2001-08-11 04:04:13 +00:00
William A. Rowe Jr
3a2b78b469 Update for the 2.0.23 tag
git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@89994 13f79535-47bb-0310-9956-ffa450edef68
2001-08-07 17:21:21 +00:00
William A. Rowe Jr
c0dbe65816 Need some context for the iterator! Finally get to use that accessor :)
git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@89866 13f79535-47bb-0310-9956-ffa450edef68
2001-08-02 00:17:45 +00:00
Victor J. Orlikowski
51f7b90eda Get dav_fs to follow options for dav.
git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@89839 13f79535-47bb-0310-9956-ffa450edef68
2001-07-31 19:21:51 +00:00
William A. Rowe Jr
f1296da8fb Clean up mod_dav error reporting to HTML/XHTML cross-compliance.
git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@89835 13f79535-47bb-0310-9956-ffa450edef68
2001-07-31 17:01:34 +00:00
Victor J. Orlikowski
2c3faa4575 Fix a couple of compiler warnings, since these are macros, not functions.
Submitted by: Justin Erenkrantz <jerenkrantz@ebuilt.com>
Reviewed by: Victor Orlikowski <orlikowski@apache.org>


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@89656 13f79535-47bb-0310-9956-ffa450edef68
2001-07-23 16:16:29 +00:00
William A. Rowe Jr
05fcc41a1f Update for latest structure changes for 2.0.21
git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@89644 13f79535-47bb-0310-9956-ffa450edef68
2001-07-20 20:00:50 +00:00
William A. Rowe Jr
f6f3f613e3 Refresh .mak files for tagging 2.0.19
git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@89458 13f79535-47bb-0310-9956-ffa450edef68
2001-06-28 00:31:04 +00:00
Roy T. Fielding
43b9634ceb Moved util_uri to apr-util/uri/apr_uri, which means adding the apr_
prefix to all of the uri functions (yuck), changing some includes,
and using APR error codes instead of HTTP-specific error codes.

Other notes to test this patch:
- You need to delete the util_uri.h file - exports picks up on this.
- I'd like to remove the apr_uri.h from httpd.h, but that might
  increase the complexity of this patch even further.  Once this patch
  is accepted (in some form), then I can focus on removing apr_uri.h
  from httpd.h entirely.  I need baby steps (heh) right now.
- I imagine that this might break a bunch of stuff in Win32 or other OS
  builds with foreign dependency files.  Any help here is appreciated.

This is a start...  -- justin

Submitted by:	Justin Erenkrantz
Reviewed by:	Roy Fielding


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@89198 13f79535-47bb-0310-9956-ffa450edef68
2001-05-22 01:31:12 +00:00
Jeff Trawick
1e08aa6be7 Account for changes to the name of field "private" in struct apr_xml_elem.
PR:             7727


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@89128 13f79535-47bb-0310-9956-ffa450edef68
2001-05-16 17:24:18 +00:00
Greg Stein
b4f8ab5b11 clarify the use of some of the members of the dav_provider structure.
git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@89007 13f79535-47bb-0310-9956-ffa450edef68
2001-05-05 11:06:27 +00:00
Jeff Trawick
21f5255073 Initialize a local variable to prevent a gcc warning about
possible use before set.  The code was fine but it is best
to keep gcc quiet lest we stop paying attention.


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@88968 13f79535-47bb-0310-9956-ffa450edef68
2001-05-01 11:17:07 +00:00
Roy T. Fielding
f1f5f01fdb Completely revamp configure so that it preserves the standard make
variables CPPFLAGS, CFLAGS, CXXFLAGS, LDFLAGS and LIBS by moving
the configure additions to EXTRA_* variables.  Also, allow the user
to specify NOTEST_* values for all of the above, which eliminates the
need for THREAD_CPPFLAGS, THREAD_CFLAGS, and OPTIM.  Fix the setting
of INCLUDES and EXTRA_INCLUDES.  Check flags as they are added to
avoid pointless duplications.  Fix the order in which flags are given
on the compile and link lines.


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@88960 13f79535-47bb-0310-9956-ffa450edef68
2001-04-29 05:24:11 +00:00
Greg Stein
8271967b17 fast-path some cases, primarily to avoid an allocation when it isn't needed.
for a "nice" piece of cdata which is in one chunk, this can usually avoid an
allocation.


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@88943 13f79535-47bb-0310-9956-ffa450edef68
2001-04-27 05:27:00 +00:00
Greg Stein
473cf0a48f allow non-absolute URIs to occur in some of the requests. RFC 2518 states
that the Destination: header (used in MOVE/COPY) must be an absolute URI, so
it keeps that constraint.


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@88876 13f79535-47bb-0310-9956-ffa450edef68
2001-04-17 11:07:09 +00:00
Greg Stein
2cc437cd20 Fix up the auto-versioning stuff. The new scheme more closely matches the
intent of DeltaV draft 14, simplifying some previous assumptions.

Includes some heavy fixes to MOVE/COPY in a versioning world.

Fix to CHECKOUT when a working resource is not created (checkout in place)

Submitted by: John Vasta <jvasta@rational.com>


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@88856 13f79535-47bb-0310-9956-ffa450edef68
2001-04-14 13:10:23 +00:00
Greg Stein
8528f53d7f Implement the MERGE method: fill in dav_method_merge(); add merge() function
to dav_hooks_vsn.


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