|
@@ -112,6 +112,13 @@ class RatelimitConfig(Config):
|
|
|
defaults={"per_second": 0.01, "burst_count": 10},
|
|
|
)
|
|
|
|
|
|
+ # Track the rate of joins to a given room. If there are too many, temporarily
|
|
|
+ # prevent local joins and remote joins via this server.
|
|
|
+ self.rc_joins_per_room = RateLimitConfig(
|
|
|
+ config.get("rc_joins_per_room", {}),
|
|
|
+ defaults={"per_second": 1, "burst_count": 10},
|
|
|
+ )
|
|
|
+
|
|
|
# Ratelimit cross-user key requests:
|
|
|
# * For local requests this is keyed by the sending device.
|
|
|
# * For requests received over federation this is keyed by the origin.
|