An ETag should refer to the requested uri, so a Location header will
render it invalid anyway. Gnome's evolution has an if-else block that
first checks ETag and then Location.
bzr revid: p_christ@hol.gr-20100812111025-xoilqlb956moovgv
We must check the "If-Match" header. Its value is quoted, so try to
remove quotes (crude way), and also consume any body before we respond
with 4xx.
Conflicts:
document_webdav/webdav_server.py
bzr revid: p_christ@hol.gr-20100801083828-lh9htiqlwewvhloh
This is another workaround for nautilus, that descends into the db (=does
authorization) and then requests info for the parent again
(causing db=False later).
bzr revid: p_christ@hol.gr-20100624150122-tntum07kgth2ogup
Python-webdav does not follow the http protocol for persistent connections,
nor does it accept patches. So, override their functions.
bzr revid: p_christ@hol.gr-20100624150054-iwuvgehsyjr7qghv
This is a reshape of the code, since the porting. While the MultiHttpHandler
will strip the '/webdav' part of the path, the DAV code will try to
generate more paths without it. So, there must be consinstent functions
that will convert (at mk_prop_response and mk_propname_response) to the
full path or back. Also, only have one function that will strip the
db name from the path, so that we control the auth requirements (for the
purpose of database listings, which shouldn't require authentication).
bzr revid: p_christ@hol.gr-20100623105437-kmy0ccqihu5h9ydp