Browse Source

Ensure category and role ids are non-null

Erik Johnston 7 years ago
parent
commit
cb3aee8219
1 changed files with 24 additions and 0 deletions
  1. 24 0
      synapse/federation/transport/server.py

+ 24 - 0
synapse/federation/transport/server.py

@@ -785,6 +785,9 @@ class FederationGroupsSummaryRoomsServlet(BaseFederationServlet):
         if get_domain_from_id(requester_user_id) != origin:
             raise SynapseError(403, "requester_user_id doesn't match origin")
 
+        if category_id == "":
+            raise SynapseError(400, "category_id cannot be empty string")
+
         resp = yield self.handler.update_group_summary_room(
             group_id, requester_user_id,
             room_id=room_id,
@@ -800,6 +803,9 @@ class FederationGroupsSummaryRoomsServlet(BaseFederationServlet):
         if get_domain_from_id(requester_user_id) != origin:
             raise SynapseError(403, "requester_user_id doesn't match origin")
 
+        if category_id == "":
+            raise SynapseError(400, "category_id cannot be empty string")
+
         resp = yield self.handler.delete_group_summary_room(
             group_id, requester_user_id,
             room_id=room_id,
@@ -854,6 +860,9 @@ class FederationGroupsCategoryServlet(BaseFederationServlet):
         if get_domain_from_id(requester_user_id) != origin:
             raise SynapseError(403, "requester_user_id doesn't match origin")
 
+        if category_id == "":
+            raise SynapseError(400, "category_id cannot be empty string")
+
         resp = yield self.handler.upsert_group_category(
             group_id, requester_user_id, category_id, content,
         )
@@ -866,6 +875,9 @@ class FederationGroupsCategoryServlet(BaseFederationServlet):
         if get_domain_from_id(requester_user_id) != origin:
             raise SynapseError(403, "requester_user_id doesn't match origin")
 
+        if category_id == "":
+            raise SynapseError(400, "category_id cannot be empty string")
+
         resp = yield self.handler.delete_group_category(
             group_id, requester_user_id, category_id,
         )
@@ -918,6 +930,9 @@ class FederationGroupsRoleServlet(BaseFederationServlet):
         if get_domain_from_id(requester_user_id) != origin:
             raise SynapseError(403, "requester_user_id doesn't match origin")
 
+        if role_id == "":
+            raise SynapseError(400, "role_id cannot be empty string")
+
         resp = yield self.handler.update_group_role(
             group_id, requester_user_id, role_id, content,
         )
@@ -930,6 +945,9 @@ class FederationGroupsRoleServlet(BaseFederationServlet):
         if get_domain_from_id(requester_user_id) != origin:
             raise SynapseError(403, "requester_user_id doesn't match origin")
 
+        if role_id == "":
+            raise SynapseError(400, "role_id cannot be empty string")
+
         resp = yield self.handler.delete_group_role(
             group_id, requester_user_id, role_id,
         )
@@ -956,6 +974,9 @@ class FederationGroupsSummaryUsersServlet(BaseFederationServlet):
         if get_domain_from_id(requester_user_id) != origin:
             raise SynapseError(403, "requester_user_id doesn't match origin")
 
+        if role_id == "":
+            raise SynapseError(400, "role_id cannot be empty string")
+
         resp = yield self.handler.update_group_summary_user(
             group_id, requester_user_id,
             user_id=user_id,
@@ -971,6 +992,9 @@ class FederationGroupsSummaryUsersServlet(BaseFederationServlet):
         if get_domain_from_id(requester_user_id) != origin:
             raise SynapseError(403, "requester_user_id doesn't match origin")
 
+        if role_id == "":
+            raise SynapseError(400, "role_id cannot be empty string")
+
         resp = yield self.handler.delete_group_summary_user(
             group_id, requester_user_id,
             user_id=user_id,