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)