summary refs log tree commit diff
path: root/synapse/handlers
diff options
context:
space:
mode:
authorRichard van der Hoff <richard@matrix.org>2016-01-27 17:02:10 +0000
committerRichard van der Hoff <richard@matrix.org>2016-01-27 17:02:10 +0000
commitd6d60b4d6cfb4f4b02a83bddb04530a6fbdf52a3 (patch)
tree35e9b820233b04cf5549d1c7de5146378bcbb2cf /synapse/handlers
parentMerge pull request #529 from matrix-org/dbkr/one_to_one_only_messages (diff)
downloadsynapse-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.py8
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