diff options
author | Richard van der Hoff <richard@matrix.org> | 2016-01-27 17:02:10 +0000 |
---|---|---|
committer | Richard van der Hoff <richard@matrix.org> | 2016-01-27 17:02:10 +0000 |
commit | d6d60b4d6cfb4f4b02a83bddb04530a6fbdf52a3 (patch) | |
tree | 35e9b820233b04cf5549d1c7de5146378bcbb2cf /synapse/handlers | |
parent | Merge pull request #529 from matrix-org/dbkr/one_to_one_only_messages (diff) | |
download | synapse-d6d60b4d6cfb4f4b02a83bddb04530a6fbdf52a3.tar.xz |
Federation: drop events which cause SynapseErrors
... rather than rejecting any attempt to federate channels which contain such events.
Diffstat (limited to 'synapse/handlers')
-rw-r--r-- | synapse/handlers/federation.py | 8 |
1 files changed, 7 insertions, 1 deletions
diff --git a/synapse/handlers/federation.py b/synapse/handlers/federation.py index 6c19d6ae8c..2ce1e9d6c7 100644 --- a/synapse/handlers/federation.py +++ b/synapse/handlers/federation.py @@ -1186,7 +1186,13 @@ class FederationHandler(BaseHandler): try: self.auth.check(e, auth_events=auth_for_e) - except AuthError as err: + except SynapseError as err: + # we may get SynapseErrors here as well as AuthErrors. For + # instance, there are a couple of (ancient) events in some + # rooms whose senders do not have the correct sigil; these + # cause SynapseErrors in auth.check. We don't want to give up + # the attempt to federate altogether in such cases. + logger.warn( "Rejecting %s because %s", e.event_id, err.msg |