summary refs log tree commit diff
path: root/synapse/rest/client/v2_alpha/register.py
diff options
context:
space:
mode:
authorKegan Dougal <kegan@matrix.org>2016-04-14 14:52:26 +0100
committerKegan Dougal <kegan@matrix.org>2016-04-14 14:52:26 +0100
commit83776d6219236f005674322067e79e24ee6a5561 (patch)
treefab5263424cfed20b86edaeb1a3b560549cf5b21 /synapse/rest/client/v2_alpha/register.py
parentcomment out 2c838f6459db35ad9812a83184d85a06ca5d940a due to risk of https://e... (diff)
downloadsynapse-83776d6219236f005674322067e79e24ee6a5561.tar.xz
Make v2_alpha reg follow the AS API specification
The spec is clear the key should be 'user' not 'username' and this is indeed
the case for v1. This is not true for v2_alpha though, which is what this
commit is fixing.
Diffstat (limited to 'synapse/rest/client/v2_alpha/register.py')
-rw-r--r--synapse/rest/client/v2_alpha/register.py5
1 files changed, 5 insertions, 0 deletions
diff --git a/synapse/rest/client/v2_alpha/register.py b/synapse/rest/client/v2_alpha/register.py
index d32c06c882..ff8f69ddbf 100644
--- a/synapse/rest/client/v2_alpha/register.py
+++ b/synapse/rest/client/v2_alpha/register.py
@@ -100,6 +100,11 @@ class RegisterRestServlet(RestServlet):
 
         # == Application Service Registration ==
         if appservice:
+            # Set the desired user according to the AS API (which uses the
+            # 'user' key not 'username'). Since this is a new addition, we'll
+            # fallback to 'username' if they gave one.
+            if isinstance(body.get("user"), basestring):
+                desired_username = body["user"]
             result = yield self._do_appservice_registration(
                 desired_username, request.args["access_token"][0]
             )