-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1
Hi folks.
I was playing around with the new KDE, which supposedly has WebDAV support now in Konqueror.
Whilst trying to access my subversion repository via Konqueror, I got an error. I sent off a bug report
to the KDE team, who say that it is a bug in the DAV server, not the client. Basically, they say that
the server is not returning the proper WebDAV headers, according to the RFC. I'm forwarding the
message I got back from them, below. You're looking for the line that says:
kio_http: (14646) "DAV: 1,2,<http://apache.org/dav/propset/fs/1>" <============ this is a required field
They claim that this is a required header.
I'm unclear as to who is responsible for the DAV part of Subversion. I know that Apache 2 supplies
a DAV module, but Subversion also provides a DAV part, so I don't know where the failure is.
Can anybody comment? If the WebDAV client is wrong, and the problem isn't on the server, can
you give me a reason why, so that I can post a follow-up to this bug report? Or, you can email to
38180@bugs.kde.org directly, but I'd be happy to play go-between.
Thanks.
- ---------- Forwarded Message ----------
Subject: Bug#38180: webdav doesn't work (properly? at all?)
Date: Sat, 16 Feb 2002 02:53:19 -0500
From: Dawit Alemayehu <adawit@kde.org>
To: 38180@bugs.kde.org
On Friday 15 February 2002 18:14, ser@germane-software.com wrote:
> Package: konqueror
> Version: KDE 2.9.2
> Severity: normal
> Installed from: Mandrake RPMs
> Compiler: Not Specified
> OS: Linux
> OS/Compiler notes: Not Specified
>
> Hi!
>
> I tried the new webdav:// protocol, with no success. I get a popup window
> with the message:
>
> The protocol The server does not support the WebDAV protocol. () is not
> supported.
>
> I can connect to the server with subversion, cadaver, and konqueror through
> plain HTTP, so I'm pretty sure the server side is OK.
>
> Here's the log of the access attempt:
[snipped debug output for brevity]
The reason why this happens is because that (your?) server does not comply
with the DAV specification as outlined in RFC 2518. Specifically, it does
not honor the sections outlined in sections 9.1 and 15. Basically, all
compliant servers must return at least one of the currently two compliance
classes of the DAV header for every OPTIONS request. I get the following
output:
kio_http: (14646) ============ Sending Header:
kio_http: (14646) OPTIONS / HTTP/1.1
kio_http: (14646) Connection: Keep-Alive
kio_http: (14646) Pragma: no-cache
kio_http: (14646) Cache-control: no-cache
kio_http: (14646) Accept: text/*, image/jpeg, image/png, image/*, */*
kio_http: (14646) Accept-Encoding: x-gzip, gzip, identity
kio_http: (14646) Accept-Charset: iso-8859-1, utf-8, *, utf-8, *
kio_http: (14646) Accept-Language: en
kio_http: (14646) Host: germane-software.com
kio_http: (14646) ============ Received Response:
kio_http: (14646) "HTTP/1.1 200 OK"
kio_http: (14646) "Date: Sat, 16 Feb 2002 07:30:38 GMT"
kio_http: (14646) "Server: Apache/2.0.31-dev (Unix) DAV/2 SVN/0.8.0"
kio_http: (14646) "Allow: GET, HEAD, POST, OPTIONS, TRACE"
kio_http: (14646) "Content-Length: 0"
kio_http: (14646) "Keep-Alive: timeout=15, max=100"
kio_http: (14646) "Connection: Keep-Alive"
kio_http: (14646) "Content-Type: text/html; charset=ISO-8859-1"
kio_http: (14646): --empty--
As compared to for example attempting the same connection to webdav.org...
kio_http: (14646) ============ Sending Header:
kio_http: (14646) OPTIONS / HTTP/1.1
kio_http: (14646) Connection: Keep-Alive
kio_http: (14646) Pragma: no-cache
kio_http: (14646) Cache-control: no-cache
kio_http: (14646) Accept: text/*, image/jpeg, image/png, image/*, */*
kio_http: (14646) Accept-Encoding: x-gzip, gzip, identity
kio_http: (14646) Accept-Charset: iso-8859-1, utf-8, *, utf-8, *
kio_http: (14646) Accept-Language: en
kio_http: (14646) Host: webdav.org
kio_http: (14646) ============ Received Response:
kio_http: (14646) "HTTP/1.1 200 OK"
kio_http: (14646) "Date: Sat, 16 Feb 2002 07:29:17 GMT"
kio_http: (14646) "Server: Apache/1.3.19 (Unix) DAV/1.0.2"
kio_http: (14646) "Content-Length: 0"
kio_http: (14646) "MS-Author-Via: DAV"
kio_http: (14646) "Allow: OPTIONS, GET, HEAD, POST, DELETE, TRACE, PROPFIND, PROPPATCH, COPY, MOVE, LOCK, UNLOCK"
kio_http: (14646) "DAV: 1,2,<http://apache.org/dav/propset/fs/1>" <============ this is a required field
kio_http: (14646) "Keep-Alive: timeout=15, max=100"
kio_http: (14646) "Connection: Keep-Alive"
kio_http: (14646) "Content-Type: text/plain"
kio_http: (14646): --empty--
Anyways, the OPTIONS request is needed to find out the capabilites your
server. We cannot assume the minimum compliance which is class 1 because
the server is expected to meet all the MUST requirements outlined in RFC
2518.
I have no idea why it works with the other clients. Are you sure they are
not simply falling back and sending you to http counter-part ?
Regards,
Dawit A.
- -------------------------------------------------------
- --
|.. "Outside of a dog, a book is mans best friend. Inside a dog, it's
<|> too hard to read."
/|\ -- Groucho Marx
/|
|
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.0.6 (GNU/Linux)
Comment: For info see http://www.gnupg.org
iD8DBQE8bk3kP0KxygnleI8RAtpgAJ4nJXAAB9ULAYLd7DIUB6TuDziVuwCfflG+
FKyNk72D3hbJoHZSRo+sWiI=
=umSi
-----END PGP SIGNATURE-----
---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@subversion.tigris.org
For additional commands, e-mail: dev-help@subversion.tigris.org
Received on Sat Oct 21 14:37:08 2006