Hi Werner!

I was looking this bug[1] and I played with it.

In the server (a chrooted Apache over OpenBSD) I had:
# <dav configuration>
Alias /dav /htdocs
DAVLockDB /conf/dav/DAVLock
<Location  /dav>
 DAV On
 AuthType Basic
 AuthName "WebDAV Disk"
 AuthUserFile /var/www/conf/dav/.DAVlogin
 AllowOverride None
 Options None
<Limit PUT POST DELETE PROPFIND PROPPATCH MKCOL COPY MOVE LOCK UNLOCK>
 Require user luciano
</Limit>
</Location>
# </dav configuration>

And everything goes well when I run:
mount -t davfs https://lucianobello.no-ip.org/dav /dav -o
username=luciano,password=xxxx

So, in order to test the bug, I change the configuration:
# <dav configuration>
#Alias /dav /htdocs
Alias "/example with spaces" /htdocs
DAVLockDB /conf/dav/DAVLock
#<Location  /dav>
<Location  "/example with spaces">
 DAV On
 AuthType Basic
 AuthName "WebDAV Disk"
 AuthUserFile /var/www/conf/dav/.DAVlogin
 AllowOverride None
 Options None
<Limit PUT POST DELETE PROPFIND PROPPATCH MKCOL COPY MOVE LOCK UNLOCK>
 Require user luciano
</Limit>
</Location>
# </dav configuration>

So, in the client, I ran:
mount -t davfs https://lucianobello.no-ip.org/example%20with%
20spaces /dav -o username=luciano,password=xxxx
/dev/davfs0 to /dav mount error : Invalid argument

I also tried:
mount -t davfs https://lucianobello.no-ip.org/example\ with\ spaces /dav
-o username=luciano,password=xxxx
Could not contact server:
400 Bad Request
WebDAV Server error

The both strace are attached. Please, said me if I made something wrong,
or if you need more information.

Thanks for your help

[1] http://bugs.debian.org/311286

-- 
Luciano Bello <[EMAIL PROTECTED]>
Linux Argetina
execve("/bin/mount", ["mount", "-t", "davfs", 
"https://lucianobello.no-ip.org/example%20with%20spaces%20dav";, "-o", 
"username=luciano,password=xxxxxxxx"], [/* 13 vars */]) = 0
uname({sysname="Linux", nodename="lappy", release="2.6.10-1-686", version="#1 
Tue Jan 18 04:34:19 EST 2005", machine="i686"}) = 0
brk(0)                                  = 0x805c000
old_mmap(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 
0xb7fe9000
access("/etc/ld.so.nohwcap", F_OK)      = -1 ENOENT (No such file or directory)
open("/etc/ld.so.preload", O_RDONLY)    = -1 ENOENT (No such file or directory)
open("/etc/ld.so.cache", O_RDONLY)      = 3
fstat64(3, {st_dev=makedev(3, 3), st_ino=8412927, st_mode=S_IFREG|0644, 
st_nlink=1, st_uid=0, st_gid=0, st_blksize=4096, st_blocks=128, st_size=64477, 
st_atime=2005/07/08-11:37:53, st_mtime=2005/07/05-14:04:33, 
st_ctime=2005/07/05-14:04:34}) = 0
old_mmap(NULL, 64477, PROT_READ, MAP_PRIVATE, 3, 0) = 0xb7fd9000
close(3)                                = 0
access("/etc/ld.so.nohwcap", F_OK)      = -1 ENOENT (No such file or directory)
open("/lib/tls/libc.so.6", O_RDONLY)    = 3
read(3, "\177ELF\1\1\1\0\0\0\0\0\0\0\0\0\3\0\3\0\1\0\0\0`Z\1\000"..., 512) = 512
fstat64(3, {st_dev=makedev(3, 3), st_ino=50404919, st_mode=S_IFREG|0644, 
st_nlink=1, st_uid=0, st_gid=0, st_blksize=4096, st_blocks=2456, 
st_size=1254468, st_atime=2005/07/08-11:37:53, st_mtime=2005/04/16-09:10:28, 
st_ctime=2005/05/06-23:29:28}) = 0
old_mmap(NULL, 1264780, PROT_READ|PROT_EXEC, MAP_PRIVATE, 3, 0) = 0xb7ea4000
old_mmap(0xb7fce000, 36864, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED, 3, 
0x129000) = 0xb7fce000
old_mmap(0xb7fd7000, 7308, PROT_READ|PROT_WRITE, 
MAP_PRIVATE|MAP_FIXED|MAP_ANONYMOUS, -1, 0) = 0xb7fd7000
close(3)                                = 0
old_mmap(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 
0xb7ea3000
set_thread_area({entry_number:-1 -> 6, base_addr:0xb7ea3460, limit:1048575, 
seg_32bit:1, contents:0, read_exec_only:0, limit_in_pages:1, seg_not_present:0, 
useable:1}) = 0
munmap(0xb7fd9000, 64477)               = 0
brk(0)                                  = 0x805c000
brk(0x807d000)                          = 0x807d000
brk(0)                                  = 0x807d000
umask(022)                              = 022
open("/dev/null", O_RDWR|O_LARGEFILE)   = 3
close(3)                                = 0
getuid32()                              = 0
geteuid32()                             = 0
lstat64("/etc/mtab", {st_dev=makedev(3, 3), st_ino=9910088, 
st_mode=S_IFREG|0644, st_nlink=1, st_uid=0, st_gid=0, st_blksize=4096, 
st_blocks=8, st_size=320, st_atime=2005/07/08-11:34:39, 
st_mtime=2005/07/08-10:22:08, st_ctime=2005/07/08-10:22:08}) = 0
write(2, "Usage: mount -V                 "..., 1095Usage: mount -V             
    : print version
       mount -h                 : print this help
       mount                    : list mounted filesystems
       mount -l                 : idem, including volume labels
So far the informational part. Next the mounting.
The command is `mount [-t fstype] something somewhere'.
Details found in /etc/fstab may be omitted.
       mount -a [-t|-O] ...     : mount all stuff from /etc/fstab
       mount device             : mount device at the known place
       mount directory          : mount known device here
       mount -t type dev dir    : ordinary mount command
Note that one does not really mount a device, one mounts
a filesystem (of the given type) found on the device.
One can also mount an already visible directory tree elsewhere:
       mount --bind olddir newdir
or move a subtree:
       mount --move olddir newdir
A device can be given by name, say /dev/hda1 or /dev/cdrom,
or by label, using  -L label  or by uuid, using  -U uuid .
Other options: [-nfFrsvw] [-o options] [-p passwdfd].
For many more details, say  man 8 mount .
) = 1095
exit_group(1)                           = ?
execve("/bin/mount", ["mount", "-t", "davfs", 
"https://lucianobello.no-ip.org/example with spaces", "/dav", "-o", 
"username=luciano,password=xxxxxxx"], [/* 13 vars */]) = 0
uname({sysname="Linux", nodename="lappy", release="2.6.10-1-686", version="#1 
Tue Jan 18 04:34:19 EST 2005", machine="i686"}) = 0
brk(0)                                  = 0x805c000
old_mmap(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 
0xb7fe9000
access("/etc/ld.so.nohwcap", F_OK)      = -1 ENOENT (No such file or directory)
open("/etc/ld.so.preload", O_RDONLY)    = -1 ENOENT (No such file or directory)
open("/etc/ld.so.cache", O_RDONLY)      = 3
fstat64(3, {st_dev=makedev(3, 3), st_ino=8412927, st_mode=S_IFREG|0644, 
st_nlink=1, st_uid=0, st_gid=0, st_blksize=4096, st_blocks=128, st_size=64477, 
st_atime=2005/07/08-11:36:54, st_mtime=2005/07/05-14:04:33, 
st_ctime=2005/07/05-14:04:34}) = 0
old_mmap(NULL, 64477, PROT_READ, MAP_PRIVATE, 3, 0) = 0xb7fd9000
close(3)                                = 0
access("/etc/ld.so.nohwcap", F_OK)      = -1 ENOENT (No such file or directory)
open("/lib/tls/libc.so.6", O_RDONLY)    = 3
read(3, "\177ELF\1\1\1\0\0\0\0\0\0\0\0\0\3\0\3\0\1\0\0\0`Z\1\000"..., 512) = 512
fstat64(3, {st_dev=makedev(3, 3), st_ino=50404919, st_mode=S_IFREG|0644, 
st_nlink=1, st_uid=0, st_gid=0, st_blksize=4096, st_blocks=2456, 
st_size=1254468, st_atime=2005/07/08-11:36:54, st_mtime=2005/04/16-09:10:28, 
st_ctime=2005/05/06-23:29:28}) = 0
old_mmap(NULL, 1264780, PROT_READ|PROT_EXEC, MAP_PRIVATE, 3, 0) = 0xb7ea4000
old_mmap(0xb7fce000, 36864, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED, 3, 
0x129000) = 0xb7fce000
old_mmap(0xb7fd7000, 7308, PROT_READ|PROT_WRITE, 
MAP_PRIVATE|MAP_FIXED|MAP_ANONYMOUS, -1, 0) = 0xb7fd7000
close(3)                                = 0
old_mmap(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 
0xb7ea3000
set_thread_area({entry_number:-1 -> 6, base_addr:0xb7ea3460, limit:1048575, 
seg_32bit:1, contents:0, read_exec_only:0, limit_in_pages:1, seg_not_present:0, 
useable:1}) = 0
munmap(0xb7fd9000, 64477)               = 0
brk(0)                                  = 0x805c000
brk(0x807d000)                          = 0x807d000
brk(0)                                  = 0x807d000
umask(022)                              = 022
open("/dev/null", O_RDWR|O_LARGEFILE)   = 3
close(3)                                = 0
getuid32()                              = 0
geteuid32()                             = 0
lstat64("/etc/mtab", {st_dev=makedev(3, 3), st_ino=9910088, 
st_mode=S_IFREG|0644, st_nlink=1, st_uid=0, st_gid=0, st_blksize=4096, 
st_blocks=8, st_size=320, st_atime=2005/07/08-11:34:39, 
st_mtime=2005/07/08-10:22:08, st_ctime=2005/07/08-10:22:08}) = 0
stat64("/sbin/mount.davfs", {st_dev=makedev(3, 3), st_ino=100869220, 
st_mode=S_IFREG|0755, st_nlink=1, st_uid=0, st_gid=0, st_blksize=4096, 
st_blocks=64, st_size=29176, st_atime=2005/07/08-11:36:04, 
st_mtime=2005/06/14-02:15:20, st_ctime=2005/06/14-02:17:27}) = 0
clone(child_stack=0, flags=CLONE_CHILD_CLEARTID|CLONE_CHILD_SETTID|SIGCHLD, 
child_tidptr=0xb7ea34a8) = 23093
wait4(-1, Could not contact server:
400 Bad Request
WebDAV Server error
[{WIFEXITED(s) && WEXITSTATUS(s) == 255}], 0, NULL) = 23093
--- SIGCHLD (Child exited) @ 0 (0) ---
exit_group(255)                         = ?

Attachment: signature.asc
Description: This is a digitally signed message part

Reply via email to