https://issues.apache.org/bugzilla/show_bug.cgi?id=44734
Summary: webdav move on top level directory crashes httpd
Product: Apache httpd-2
Version: 2.2.8
Platform: Sun
OS/Version: Solaris
Status: NEW
Severity: major
Priority: P2
Component: mod_dav
AssignedTo: [email protected]
ReportedBy: [EMAIL PROTECTED]
Created an attachment (id=21758)
--> (https://issues.apache.org/bugzilla/attachment.cgi?id=21758)
httpd.conf
Apache crashes when attempting to rename a top level directory (meaning, the
directory named in the <Directory> directive).
Create a test directory:
# mkdir /tmp/test
# mkdir /tmp/test/foo
# chmod -R a+w /tmp/test
Make the directory visible via httpd by adding a block to the config:
Alias "/foo/bar" "/tmp/test/foo/bar"
<Directory "/tmp/test/foo/bar">
Dav On
Options Indexes
IndexOptions +FancyIndexing
Allow from all
</Directory>
Run httpd -X in a debugger.
Attempt to rename the directory from a client, in this case cadaver:
# cadaver http://localhost:8080/foo/bar
dav:/foo/bar/> mv /foo/bar/ /foo/barf
httpd crashes with this stack trace:
(dbx) where
current thread: [EMAIL PROTECTED]
=>[1] dav_get_resource(r = 0x8238380, label_allowed = 0, use_checked_in = 0,
res_p = 0x8047a50), line 726 in "mod_dav.c"
[2] dav_method_copymove(r = 0x823c390, is_move = 1), line 2643 in "mod_dav.c"
[3] dav_handler(r = 0x823c390), line 4660 in "mod_dav.c"
[4] ap_run_handler(0x823c390), at 0x80ae02c
[5] ap_invoke_handler(r = 0x823c390), line 372 in "config.c"
[6] ap_process_request(r = 0x823c390), line 258 in "http_request.c"
[7] ap_process_http_connection(c = 0x82305f8), line 190 in "http_core.c"
[8] ap_run_process_connection(0x82305f8), at 0x80b6e9c
[9] ap_process_connection(c = 0x82305f8, csd = 0x8230360), line 178 in
"connection.c"
[10] child_main(child_num_arg = 0), line 640 in "prefork.c"
[11] make_child(s = 0x816bab0, slot = 0), line 680 in "prefork.c"
[12] ap_mpm_run(_pconf = 0x8163bf8, plog = 0x81add20, s = 0x816bab0), line
956 in "prefork.c"
[13] main(argc = 2, argv = 0x8047cd0), line 730 in "main.c"
(dbx) print conf->provider
conf->provider = (nil)
I expect that attempting to rename a directory explicitly named in the
<Directory> block should probably be forbidden.
--
Configure bugmail: https://issues.apache.org/bugzilla/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are the assignee for the bug.
---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]