From 4128d03cd49d40392b0b0fdd9a24502e4a05e6f6 Mon Sep 17 00:00:00 2001 From: Andrew Morgan Date: Wed, 12 Feb 2020 13:01:29 +0000 Subject: [PATCH] Route public room list requests to our own server_name locally instead --- synapse/rest/client/v1/room.py | 16 ++++++++++------ 1 file changed, 10 insertions(+), 6 deletions(-) diff --git a/synapse/rest/client/v1/room.py b/synapse/rest/client/v1/room.py index 3d5fdb81a4..469c6a5245 100644 --- a/synapse/rest/client/v1/room.py +++ b/synapse/rest/client/v1/room.py @@ -372,7 +372,7 @@ class PublicRoomListRestServlet(TransactionRestServlet): limit = None handler = self.hs.get_room_list_handler() - if server: + if server and server != self.hs.config.server_name: try: data = await handler.get_remote_public_room_list( server, limit=limit, since_token=since_token @@ -383,10 +383,12 @@ class PublicRoomListRestServlet(TransactionRestServlet): 400, "The remote server is only allowing local users to view " "its public rooms list", - errcode=Codes.FORBIDDEN + errcode=Codes.FORBIDDEN, ) else: - raise SynapseError(400, "Unable to retrieve remote public rooms list") + raise SynapseError( + 400, "Unable to retrieve remote public rooms list" + ) else: data = await handler.get_local_public_room_list( limit=limit, since_token=since_token @@ -423,7 +425,7 @@ class PublicRoomListRestServlet(TransactionRestServlet): limit = None handler = self.hs.get_room_list_handler() - if server: + if server and server != self.hs.config.server_name: try: data = await handler.get_remote_public_room_list( server, @@ -439,10 +441,12 @@ class PublicRoomListRestServlet(TransactionRestServlet): 400, "The remote server is only allowing local users to view " "its public rooms list", - errcode=Codes.FORBIDDEN + errcode=Codes.FORBIDDEN, ) else: - raise SynapseError(400, "Unable to retrieve remote public rooms list") + raise SynapseError( + 400, "Unable to retrieve remote public rooms list" + ) else: data = await handler.get_local_public_room_list( limit=limit,