diff options
author | Erik Johnston <erik@matrix.org> | 2019-02-23 14:31:08 +0000 |
---|---|---|
committer | Erik Johnston <erik@matrix.org> | 2019-02-23 14:50:43 +0000 |
commit | 59e011220942e642968c453a36fff4862c753ce3 (patch) | |
tree | 251b6083db13972c87d369fcee94e31c6f772f80 /synapse/federation/federation_server.py | |
parent | Merge pull request #4716 from matrix-org/erikj/pusher_logging (diff) | |
download | synapse-59e011220942e642968c453a36fff4862c753ce3.tar.xz |
MSC 1866 - Use M_UNSUPPORTED_ROOM_VERSION for invite API
Diffstat (limited to 'synapse/federation/federation_server.py')
-rw-r--r-- | synapse/federation/federation_server.py | 10 |
1 files changed, 9 insertions, 1 deletions
diff --git a/synapse/federation/federation_server.py b/synapse/federation/federation_server.py index 3da86d4ba6..e44342bc85 100644 --- a/synapse/federation/federation_server.py +++ b/synapse/federation/federation_server.py @@ -25,9 +25,10 @@ from twisted.internet import defer from twisted.internet.abstract import isIPAddress from twisted.python import failure -from synapse.api.constants import EventTypes, Membership +from synapse.api.constants import KNOWN_ROOM_VERSIONS, EventTypes, Membership from synapse.api.errors import ( AuthError, + Codes, FederationError, IncompatibleRoomVersionError, NotFoundError, @@ -386,6 +387,13 @@ class FederationServer(FederationBase): @defer.inlineCallbacks def on_invite_request(self, origin, content, room_version): + if room_version not in KNOWN_ROOM_VERSIONS: + raise SynapseError( + 400, + "Homeserver does not support this room version", + Codes.UNSUPPORTED_ROOM_VERSION, + ) + format_ver = room_version_to_event_format(room_version) pdu = event_from_pdu_json(content, format_ver) |