summary refs log tree commit diff
diff options
context:
space:
mode:
-rw-r--r--changelog.d/13789.bugfix1
-rw-r--r--synapse/federation/transport/server/federation.py3
2 files changed, 2 insertions, 2 deletions
diff --git a/changelog.d/13789.bugfix b/changelog.d/13789.bugfix
new file mode 100644

index 0000000000..9e1e3e0fa7 --- /dev/null +++ b/changelog.d/13789.bugfix
@@ -0,0 +1 @@ +Fix a long-standing spec compliance bug where Synapse would accept a trailing slash on the end of `/get_missing_events` federation requests. \ No newline at end of file diff --git a/synapse/federation/transport/server/federation.py b/synapse/federation/transport/server/federation.py
index f7884bfbe0..6bb4659c4c 100644 --- a/synapse/federation/transport/server/federation.py +++ b/synapse/federation/transport/server/federation.py
@@ -549,8 +549,7 @@ class FederationClientKeysClaimServlet(BaseFederationServerServlet): class FederationGetMissingEventsServlet(BaseFederationServerServlet): - # TODO(paul): Why does this path alone end with "/?" optional? - PATH = "/get_missing_events/(?P<room_id>[^/]*)/?" + PATH = "/get_missing_events/(?P<room_id>[^/]*)" async def on_POST( self,