summary refs log tree commit diff
diff options
context:
space:
mode:
Diffstat (limited to '')
-rw-r--r--changelog.d/13062.misc1
-rw-r--r--synapse/rest/client/room.py4
2 files changed, 4 insertions, 1 deletions
diff --git a/changelog.d/13062.misc b/changelog.d/13062.misc
new file mode 100644
index 0000000000..d425e9a9ac
--- /dev/null
+++ b/changelog.d/13062.misc
@@ -0,0 +1 @@
+Allow MSC3030 'timestamp_to_event' calls from anyone on world-readable rooms.
diff --git a/synapse/rest/client/room.py b/synapse/rest/client/room.py
index a26e976492..2f513164cb 100644
--- a/synapse/rest/client/room.py
+++ b/synapse/rest/client/room.py
@@ -1177,7 +1177,9 @@ class TimestampLookupRestServlet(RestServlet):
         self, request: SynapseRequest, room_id: str
     ) -> Tuple[int, JsonDict]:
         requester = await self._auth.get_user_by_req(request)
-        await self._auth.check_user_in_room(room_id, requester.user.to_string())
+        await self._auth.check_user_in_room_or_world_readable(
+            room_id, requester.user.to_string()
+        )
 
         timestamp = parse_integer(request, "ts", required=True)
         direction = parse_string(request, "dir", default="f", allowed_values=["f", "b"])