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
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
* modules/dav/main/util.c (dav_validate_resource_state): Fix a 2617
violation: if the lock user validation fails, rather than giving a 401
without a WWW-Authenticate header, give a 403.
git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@102958 13f79535-47bb-0310-9956-ffa450edef68
factored out, sends an EOS bucket after the response body.
(dav_send_multistatus, dav_method_propfind): Use it.
[might be related to PR 27576 if there is a real issue described
there]
git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@102933 13f79535-47bb-0310-9956-ffa450edef68
function calls, provides type safety for the ap_filter_t*, and
clarifies what is really going on (i.e. we aren't sending a FLUSH
bucket of any kind).
* mod_dav.c (dav_send_multistatus, dav_method_propfind): change the
ap_filter_flush call to ap_pass_brigade; flip the params to match
the prototype.
git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@100647 13f79535-47bb-0310-9956-ffa450edef68
response.
* mod_dav.c (dav_method_propfind, dav_method_report): if the dav
provider throws an error in the middle of streaming a response,
have mod_dav log an error and abort the connection.
Submitted by: Ben Collins-Sussman <sussman@collab.net>
git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@100309 13f79535-47bb-0310-9956-ffa450edef68
* mod_dav.c (dav_method_propfind): the PROPFIND request might not have
a body. Therefore, we cannot dereference 'doc' unconditionally.
Test it to decide what to pass on to dav_begin_multistatus().
Submitted by: Ben Collins-Sussman <sussman@collab.net>,
David Waite <mass@akuma.org>
git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@100308 13f79535-47bb-0310-9956-ffa450edef68
rather than cache every <response> object and send the whole 207 at once.
Note: this patch doesn't affect the mod_dav provider API at all.
Providers still return property results in text-buffers, but mod_dav
then streams them out immediately.
Submitted by: Ben Collins-Sussman <sussman@collab.net>
Reviewed by: gstein, jerenkrantz, sander
* mod_dav.h (dav_walker_ctx): add a brigade field and a scratchpool field.
* mod_dav.c (dav_send_one_response): new helper function to write a
<DAV:response> into a brigade/filter. this code has been factorized
out of dav_send_multistatus.
(dav_begin_multistatus): new factorized helper func; creates brigade
and sends initial <multistatus> tag.
(dav_send_multistatus): create brigade, call dav_begin_multistatus,
and switch all ap_rputs calls to ap_fputs instead. call
dav_send_one_response when looping over response list. use a
subpool when iterating.
(dav_method_propfind): initialize walker ctx's brigade. initialize
ctx's scratchpool as a subpool of r->pool. Send a <multistatus> tag
before calling the provider's walk() function, and a </multistatus>
tag afterwards.
(dav_stream_response): new function, originally based on
dav_add_repsonse. don't build linked list of responses in memory;
just spew each response object into the brigade via
dav_send_one_response(). take an incoming pool argument to do the
temporary allocation and streaming.
(dav_propfind_walker): pass ctx->scratchpool to dav_stream_response,
and clear the pool when finished.
git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@100164 13f79535-47bb-0310-9956-ffa450edef68
mod_dav isn't calling it before creating an activity. This is a
required precondition (along with the resource not existing), as
defined in the deltaV RFC (3253), section 13.5.
* mod_dav.c (dav_method_make_activity): if available, call provider's
'can_be_activity' callback as a precondition to making an activity.
Submitted by: Ben Collins-Sussman <sussman@apache.org>
Reviewed by: Sander Striker
git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@99966 13f79535-47bb-0310-9956-ffa450edef68
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
fairly redundant when you retain rich .pdb debugging symbol files. We
have rarely used them, and generally .dbg and .pdb files prove much more
useful for the cases we have.
While eliminating /map files, we are also shrinking the size of the .dbg
files by stripping 'private' symbol information. Really this means less
rich diagnostics from Dr. Watson on NT or Win9x when they query the .dbg
symbols in creating a DrWatson log file. But it's more than compensated
for on newer OS'es where Dr. Watson will query the .pdb symbols, on all
Win32 flavors when WinDbg is used with the .pdb symbols, and the fact that
the distribution of binary symbols will use less bandwidth when less
information is duplicated from the .pdb format into the .dbg files.
git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@98743 13f79535-47bb-0310-9956-ffa450edef68
was badness. Twist this puppy to .dbr, the only name I could invent that
doesn't look like any database file extension I recall.
It stands for .dbg rebased.
git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@98712 13f79535-47bb-0310-9956-ffa450edef68
and .dbg files (older debuggers and Dr. Watson-type utilities
on WinNT or Win9x don't support the newer .pdb flavor.)
[Allen Edwards, William Rowe]
git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@98596 13f79535-47bb-0310-9956-ffa450edef68
input into lookup.err.desc for the HTTP_BAD_REQUEST case, then we
could have problems (via a format string attack). This change frees us
from *future* worries.
git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@97233 13f79535-47bb-0310-9956-ffa450edef68
Mod_Dav was always setting the r->handler field to "dav_handler", but
this means that mod_cgi won't run the script. According to my reading
of the DAV RFC, mod_dav shouldn't do anything at all with a POST request,
because it is impossible to know if the POST was meant for DAV or for some
other resource. We used to excuse POST from DAV processing, so I have
re-enabled that behavior.
PR: 13025
git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@97016 13f79535-47bb-0310-9956-ffa450edef68
the DSO link problems for DAV and the new aaa modules by moving the
provider code into the core of the server and generalizing them to be
used by any code.
Remove the auth{nz}_*_provider functions as they are no longer needed.
Change the dav_*_provider functions to wrap the ap_*_provider functions
as they have a bit more of a historical precedent that we should keep
around.
Reviewed by: John K. Sterling <john@sterls.com> (in concept)
git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@96919 13f79535-47bb-0310-9956-ffa450edef68