Limit the number of events that can be requested when backfilling events (#6864)

Limit the maximum number of events requested when backfilling events.
code_spécifique_watcha
Patrick Cloke 5 years ago committed by GitHub
parent b0c8bdd49d
commit 7765bf3989
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
  1. 1
      changelog.d/6864.misc
  2. 4
      synapse/handlers/federation.py

@ -0,0 +1 @@
Limit the number of events that can be requested by the backfill federation API to 100.

@ -1788,6 +1788,9 @@ class FederationHandler(BaseHandler):
if not in_room:
raise AuthError(403, "Host not in room.")
# Synapse asks for 100 events per backfill request. Do not allow more.
limit = min(limit, 100)
events = yield self.store.get_backfill_events(room_id, pdu_list, limit)
events = yield filter_events_for_server(self.storage, origin, events)
@ -2168,6 +2171,7 @@ class FederationHandler(BaseHandler):
if not in_room:
raise AuthError(403, "Host not in room.")
# Only allow up to 20 events to be retrieved per request.
limit = min(limit, 20)
missing_events = await self.store.get_missing_events(

Loading…
Cancel
Save