summary refs log tree commit diff
diff options
context:
space:
mode:
authorNeil Johnson <neil@matrix.org>2019-09-24 14:56:12 +0100
committerNeil Johnson <neil@matrix.org>2019-09-24 14:56:12 +0100
commit99db0d76fd5d0efb9a3e232fc03c547112230cf4 (patch)
treebe865fff82359b2dd4427dd41454acaadb6bdd54
parentMerge remote-tracking branch 'origin/develop' into matrix-org-hotfixes (diff)
parentAdd sid to next_link for email validation (#6097) (diff)
downloadsynapse-99db0d76fd5d0efb9a3e232fc03c547112230cf4.tar.xz
Merge branch 'develop' of github.com:matrix-org/synapse into matrix-org-hotfixes
-rw-r--r--changelog.d/6097.bugfix1
-rw-r--r--synapse/handlers/identity.py10
2 files changed, 11 insertions, 0 deletions
diff --git a/changelog.d/6097.bugfix b/changelog.d/6097.bugfix
new file mode 100644

index 0000000000..750a8ecf0a --- /dev/null +++ b/changelog.d/6097.bugfix
@@ -0,0 +1 @@ +Add sid to next_link for email validation. diff --git a/synapse/handlers/identity.py b/synapse/handlers/identity.py
index 1f16afd14e..6d42a1aed8 100644 --- a/synapse/handlers/identity.py +++ b/synapse/handlers/identity.py
@@ -18,6 +18,7 @@ """Utilities for interacting with Identity Servers""" import logging +import urllib from canonicaljson import json @@ -328,6 +329,15 @@ class IdentityHandler(BaseHandler): # Generate a session id session_id = random_string(16) + if next_link: + # Manipulate the next_link to add the sid, because the caller won't get + # it until we send a response, by which time we've sent the mail. + if "?" in next_link: + next_link += "&" + else: + next_link += "?" + next_link += "sid=" + urllib.parse.quote(session_id) + # Generate a new validation token token = random_string(32)