[Zope] WebDAV locking problem, some more enlightment

Joachim Schmitz js@aixtraware.de
Sat, 17 Nov 2001 21:59:11 +0100 (CET)


Hi,

I installed the mod_dav in my local apache, to try if it shows the same
symtoms, and found some interesting things.

1. Word opens documents not writeprotected on the apache DAV-store, even =
if
they are not writable !!!

2. By accident I had the executable flag set on a htm-file, this file is
opened writeprotected !!!
This is reproduceble, if you unset the x-flag it is opened in readwrite m=
ode.

I took a log of both situations:

the only difference I could find was in the response to the

GET /dav/testdocweb.htm HTTP/1.1
Accept-Language: de, en-us;q=3D0.2
If-None-Match: "1cb27-8ce-3bf6bf01"
Translate: f
User-Agent: Microsoft Data Access Internet Publishing Provider DAV
Host: 10.2.1.1
Connection: Keep-Alive

wich in the readwrite case is:

HTTP/1.1 200 OK
Date: Sat, 17 Nov 2001 19:50:19 GMT
Server: Apache/1.3.19 (Unix)  (SuSE/Linux) mod_python/2.7.2 Python/2.0
DAV/1.0.2
Last-Modified: Sat, 17 Nov 2001 19:50:08 GMT
ETag: "1cb25-8fb-3bf6bf70"
Accept-Ranges: bytes
Content-Length: 2299
Keep-Alive: timeout=3D15, max=3D99
Connection: Keep-Alive
Content-Type: text/html

<html xmlns:o=3D"urn:schemas-microsoft-com:office:office"
.... rest of document


and in the writeprotected case

HTTP/1.1 200 OK
Date: Sat, 17 Nov 2001 19:28:14 GMT
Server: Apache/1.3.19 (Unix)  (SuSE/Linux) mod_python/2.7.2 Python/2.0
DAV/1.0.2
Keep-Alive: timeout=3D15, max=3D99
Connection: Keep-Alive
Transfer-Encoding: chunked
Content-Type: text/html

8fb
<html xmlns:o=3D"urn:schemas-microsoft-com:office:office"
.... rest of document.

in this case the document is fetched a second time, after unlocking.

which is also the case, when fetching a htm-file from Zope-Dav storage

here is the get for a doc-file:

GET /test/testdoc11111111.doc HTTP/1.1
Accept-Language: de, en-us;q=3D0.2
If-None-Match: ts06033018.5
Translate: f
User-Agent: Microsoft Data Access Internet Publishing Provider DAV
Host: a.b.de:9800
Connection: Keep-Alive
Authorization: Basic xxxxxxxx=3D

and here the response:

HTTP/1.1 200 OK
Server: Zope/(Zope 2.4.3 (binary release, python 2.1, linux2-x86), python
2.1.0, linux2) ZServer/1.1b$
Date: Sat, 17 Nov 2001 21:38:41 GMT
Accept-Ranges: bytes
Content-Type: application/msword
Content-Length: 19456
Last-Modified: Sat, 17 Nov 2001 21:36:58 GMT

it follows the binary doc-file

here is the get for an htm-file:

GET /test/testweb1.htm HTTP/1.1
Accept-Language: de, en-us;q=3D0.2
Translate: f
User-Agent: Microsoft Data Access Internet Publishing Provider DAV
Host: a.b.de:9800
Connection: Keep-Alive
Authorization: Basic xxxxxxxxxx=3D

and the response:

HTTP/1.1 200 OK
Server: Zope/(Zope 2.4.3 (binary release, python 2.1, linux2-x86), python
2.1.0, linux2) ZServer/1.1b$
Date: Sat, 17 Nov 2001 21:38:12 GMT
Content-Type: text/html
Content-Length: 2703



The only thing which is not there in the writeprotected cases in the resp=
onse is
the "ETag:" and the "Accept-Ranges: bytes", perhaps that tells something =
to
the wizards of the HTTP-protocol ;-)



Mit freundlichen Gr=FC=DFen

Joachim Schmitz

AixtraWare, Ing. B=FCro f=FCr Internetanwendungen
H=FCsgenstr. 33a, D-52457 Aldenhoven
Telefon: +49-2464-8851, FAX: +49-2464-905163