httpd-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Greg Stein <gst...@lyra.org>
Subject Re: Seg fault in mod_dav.
Date Thu, 19 Sep 2002 02:31:27 GMT
On Wed, Sep 18, 2002 at 07:37:55PM -0400, rbb@apache.org wrote:
>...
> First, a stack trace:
> 
> Program received signal SIGSEGV, Segmentation fault.
> [Switching to Thread 1024 (LWP 18642)]
> 0x403cf42f in dav_method_options (r=0x8123470) at mod_dav.c:1762
> 1762                if ((err = (*vsn_hooks->get_option)(resource, elem,
> &body))

This line is reached if you provide a body to an OPTIONS request *and* DAV
has been configured for that location.

>...
> Next, the value of vsn_hooks:
> 
> gdb) p vsn_hooks
> $1 = (dav_hooks_vsn *) 0x0

This will happen if the provider for that location does not provide
versioning support.

> Finally, the config and the problem:
> 
>     <Location /svn/repos>
>         Dav svn
>         SVNPath /svn
>         # snipped for brevity, not the cuase
>     </Location>

And a piece that you didn't provide: didn't you configure DAV for the whole
server? That the SVN provider is just this subset of the space?

(hmm; but that shouldn't be possible; dav_merge_dir_config() should prevent
 the use of a different provider lower in the tree...)

Oh. Wait. It *is* possible, as mod_dav can't bail out right there. It will
just fill up your error log. Are you seeing text in your error log that
says:

  A subtree cannot specify a different DAV provider than its parent.

???

> The problem is that I was requesting:
> 
> svn import http://www.rkbloom.net/svn mumble
> 
> Notice that the config is /svn/repos, but the command is /svn.  There is
> no /svn, so I should have gotten a 404 back.

I still haven't reproduced your problem. I'm seeing a different problem in
the SVN client, but no crash in Apache.

I'm going to try to set up a situation with mod_dav_fs on the root, and
mod_dav_svn on a subtree.

Oh... wait a sec. I was getting too complicated. Simply sending an OPTIONS
request *with a body* to a location using mod_dav_fs as its provider will
blow up at that point. Well, mod_dav_FOO that doesn't provide versioning
support. (and assuming the body looks like a DeltaV <options> body)

Patch coming up in one second...

Cheers,
-g

-- 
Greg Stein, http://www.lyra.org/

Mime
View raw message