44 lines
1.9 KiB
Diff
44 lines
1.9 KiB
Diff
diff -urN radicale/app/propfind.py radicale/app/propfind.py
|
|
--- radicale/app/propfind.py 2022-04-20 17:57:41.000000000 +0200
|
|
+++ radicale/app/propfind.py 2022-06-01 07:33:33.000000000 +0200
|
|
@@ -350,8 +350,8 @@
|
|
permission = "r"
|
|
status = "read"
|
|
else:
|
|
- permission = ""
|
|
- status = "NO"
|
|
+ permission = "r"
|
|
+ status = "read"
|
|
logger.debug(
|
|
"%s has %s access to %s",
|
|
repr(user) if user else "anonymous user", status, target)
|
|
@@ -362,8 +362,8 @@
|
|
path: str, user: str) -> types.WSGIResponse:
|
|
"""Manage PROPFIND request."""
|
|
access = Access(self._rights, user, path)
|
|
- if not access.check("r"):
|
|
- return httputils.NOT_ALLOWED
|
|
+ #if not access.check("r"):
|
|
+ # return httputils.NOT_ALLOWED
|
|
try:
|
|
xml_content = self._read_xml_request_body(environ)
|
|
except RuntimeError as e:
|
|
@@ -380,8 +380,8 @@
|
|
item = next(items_iter, None)
|
|
if not item:
|
|
return httputils.NOT_FOUND
|
|
- if not access.check("r", item):
|
|
- return httputils.NOT_ALLOWED
|
|
+ #if not access.check("r", item):
|
|
+ # return httputils.NOT_ALLOWED
|
|
# put item back
|
|
items_iter = itertools.chain([item], items_iter)
|
|
allowed_items = self._collect_allowed_items(items_iter, user)
|
|
@@ -390,5 +390,6 @@
|
|
xml_answer = xml_propfind(base_prefix, path, xml_content,
|
|
allowed_items, user, self._encoding)
|
|
if xml_answer is None:
|
|
+ logger.warning("xml_propfind returned no answer")
|
|
return httputils.NOT_ALLOWED
|
|
return client.MULTI_STATUS, headers, self._xml_response(xml_answer)
|