summary refs log tree commit diff
path: root/synapse/handlers
diff options
context:
space:
mode:
authorErik Johnston <erikj@jki.re>2019-01-29 10:55:07 +0000
committerGitHub <noreply@github.com>2019-01-29 10:55:07 +0000
commit073f6c2e5eefbaf64fcec9b8b98a029193d5e25d (patch)
tree7dbfb2e2bd21214c223468a0de3796c048e5da2b /synapse/handlers
parentFix receiving events from federation via a worker (diff)
parentRemove duplicate checks (diff)
downloadsynapse-073f6c2e5eefbaf64fcec9b8b98a029193d5e25d.tar.xz
Merge pull request #4494 from matrix-org/erikj/fixup_event_validator
Split up event validation between event and builder
Diffstat (limited to 'synapse/handlers')
-rw-r--r--synapse/handlers/federation.py7
-rw-r--r--synapse/handlers/message.py4
2 files changed, 8 insertions, 3 deletions
diff --git a/synapse/handlers/federation.py b/synapse/handlers/federation.py

index 5adbe7b538..adf59db7a8 100644 --- a/synapse/handlers/federation.py +++ b/synapse/handlers/federation.py
@@ -2282,7 +2282,7 @@ class FederationHandler(BaseHandler): room_version = yield self.store.get_room_version(room_id) builder = self.event_builder_factory.new(room_version, event_dict) - EventValidator().validate_new(builder) + EventValidator().validate_builder(builder) event, context = yield self.event_creation_handler.create_new_client_event( builder=builder ) @@ -2291,6 +2291,8 @@ class FederationHandler(BaseHandler): room_version, event_dict, event, context ) + EventValidator().validate_new(event) + try: yield self.auth.check_from_context(room_version, event, context) except AuthError as e: @@ -2376,10 +2378,11 @@ class FederationHandler(BaseHandler): # auth check code will explode appropriately. builder = self.event_builder_factory.new(room_version, event_dict) - EventValidator().validate_new(builder) + EventValidator().validate_builder(builder) event, context = yield self.event_creation_handler.create_new_client_event( builder=builder, ) + EventValidator().validate_new(event) defer.returnValue((event, context)) @defer.inlineCallbacks diff --git a/synapse/handlers/message.py b/synapse/handlers/message.py
index 67b364a6c3..05d1370c18 100644 --- a/synapse/handlers/message.py +++ b/synapse/handlers/message.py
@@ -288,7 +288,7 @@ class EventCreationHandler(object): builder = self.event_builder_factory.new(room_version, event_dict) - self.validator.validate_new(builder) + self.validator.validate_builder(builder) if builder.type == EventTypes.Member: membership = builder.content.get("membership", None) @@ -326,6 +326,8 @@ class EventCreationHandler(object): prev_events_and_hashes=prev_events_and_hashes, ) + self.validator.validate_new(event) + defer.returnValue((event, context)) def _is_exempt_from_privacy_policy(self, builder, requester):