mirror of
https://git.anonymousland.org/anonymousland/synapse-product.git
synced 2025-01-07 09:47:53 -05:00
rename assert_params_in_request to assert_params_in_dict
the method "assert_params_in_request" does handle dicts and not requests. A request body has to be parsed to json before this method can be used
This commit is contained in:
parent
32fd6910d0
commit
3366b9c534
@ -23,7 +23,7 @@ from synapse.api.errors import Codes, SynapseError
|
|||||||
from synapse.crypto.event_signing import check_event_content_hash
|
from synapse.crypto.event_signing import check_event_content_hash
|
||||||
from synapse.events import FrozenEvent
|
from synapse.events import FrozenEvent
|
||||||
from synapse.events.utils import prune_event
|
from synapse.events.utils import prune_event
|
||||||
from synapse.http.servlet import assert_params_in_request
|
from synapse.http.servlet import assert_params_in_dict
|
||||||
from synapse.util import logcontext, unwrapFirstError
|
from synapse.util import logcontext, unwrapFirstError
|
||||||
|
|
||||||
logger = logging.getLogger(__name__)
|
logger = logging.getLogger(__name__)
|
||||||
@ -199,7 +199,7 @@ def event_from_pdu_json(pdu_json, outlier=False):
|
|||||||
"""
|
"""
|
||||||
# we could probably enforce a bunch of other fields here (room_id, sender,
|
# we could probably enforce a bunch of other fields here (room_id, sender,
|
||||||
# origin, etc etc)
|
# origin, etc etc)
|
||||||
assert_params_in_request(pdu_json, ('event_id', 'type', 'depth'))
|
assert_params_in_dict(pdu_json, ('event_id', 'type', 'depth'))
|
||||||
|
|
||||||
depth = pdu_json['depth']
|
depth = pdu_json['depth']
|
||||||
if not isinstance(depth, six.integer_types):
|
if not isinstance(depth, six.integer_types):
|
||||||
|
@ -206,7 +206,7 @@ def parse_json_object_from_request(request, allow_empty_body=False):
|
|||||||
return content
|
return content
|
||||||
|
|
||||||
|
|
||||||
def assert_params_in_request(body, required):
|
def assert_params_in_dict(body, required):
|
||||||
absent = []
|
absent = []
|
||||||
for k in required:
|
for k in required:
|
||||||
if k not in body:
|
if k not in body:
|
||||||
|
@ -23,7 +23,7 @@ from twisted.internet import defer
|
|||||||
from synapse.api.constants import Membership
|
from synapse.api.constants import Membership
|
||||||
from synapse.api.errors import AuthError, Codes, NotFoundError, SynapseError
|
from synapse.api.errors import AuthError, Codes, NotFoundError, SynapseError
|
||||||
from synapse.http.servlet import (
|
from synapse.http.servlet import (
|
||||||
assert_params_in_request,
|
assert_params_in_dict,
|
||||||
parse_json_object_from_request,
|
parse_json_object_from_request,
|
||||||
parse_integer,
|
parse_integer,
|
||||||
parse_string
|
parse_string
|
||||||
@ -297,7 +297,7 @@ class ShutdownRoomRestServlet(ClientV1RestServlet):
|
|||||||
raise AuthError(403, "You are not a server admin")
|
raise AuthError(403, "You are not a server admin")
|
||||||
|
|
||||||
content = parse_json_object_from_request(request)
|
content = parse_json_object_from_request(request)
|
||||||
assert_params_in_request(content, ["new_room_user_id"])
|
assert_params_in_dict(content, ["new_room_user_id"])
|
||||||
new_room_user_id = content["new_room_user_id"]
|
new_room_user_id = content["new_room_user_id"]
|
||||||
|
|
||||||
room_creator_requester = create_requester(new_room_user_id)
|
room_creator_requester = create_requester(new_room_user_id)
|
||||||
@ -459,7 +459,7 @@ class ResetPasswordRestServlet(ClientV1RestServlet):
|
|||||||
raise AuthError(403, "You are not a server admin")
|
raise AuthError(403, "You are not a server admin")
|
||||||
|
|
||||||
params = parse_json_object_from_request(request)
|
params = parse_json_object_from_request(request)
|
||||||
assert_params_in_request(params, ["new_password"])
|
assert_params_in_dict(params, ["new_password"])
|
||||||
new_password = params['new_password']
|
new_password = params['new_password']
|
||||||
|
|
||||||
logger.info("new_password: %r", new_password)
|
logger.info("new_password: %r", new_password)
|
||||||
@ -542,7 +542,7 @@ class GetUsersPaginatedRestServlet(ClientV1RestServlet):
|
|||||||
|
|
||||||
order = "name" # order by name in user table
|
order = "name" # order by name in user table
|
||||||
params = parse_json_object_from_request(request)
|
params = parse_json_object_from_request(request)
|
||||||
assert_params_in_request(params, ["limit", "start"])
|
assert_params_in_dict(params, ["limit", "start"])
|
||||||
limit = params['limit']
|
limit = params['limit']
|
||||||
start = params['start']
|
start = params['start']
|
||||||
logger.info("limit: %s, start: %s", limit, start)
|
logger.info("limit: %s, start: %s", limit, start)
|
||||||
|
@ -19,7 +19,7 @@ import logging
|
|||||||
from twisted.internet import defer
|
from twisted.internet import defer
|
||||||
|
|
||||||
from synapse.api.errors import AuthError, SynapseError
|
from synapse.api.errors import AuthError, SynapseError
|
||||||
from synapse.http.servlet import assert_params_in_request, parse_json_object_from_request
|
from synapse.http.servlet import parse_json_object_from_request
|
||||||
from synapse.types import RoomAlias
|
from synapse.types import RoomAlias
|
||||||
|
|
||||||
from .base import ClientV1RestServlet, client_path_patterns
|
from .base import ClientV1RestServlet, client_path_patterns
|
||||||
|
@ -21,7 +21,7 @@ from synapse.api.errors import Codes, StoreError, SynapseError
|
|||||||
from synapse.http.server import finish_request
|
from synapse.http.server import finish_request
|
||||||
from synapse.http.servlet import (
|
from synapse.http.servlet import (
|
||||||
RestServlet,
|
RestServlet,
|
||||||
assert_params_in_request,
|
assert_params_in_dict,
|
||||||
parse_json_object_from_request,
|
parse_json_object_from_request,
|
||||||
parse_string,
|
parse_string,
|
||||||
)
|
)
|
||||||
@ -92,7 +92,7 @@ class PushersSetRestServlet(ClientV1RestServlet):
|
|||||||
)
|
)
|
||||||
defer.returnValue((200, {}))
|
defer.returnValue((200, {}))
|
||||||
|
|
||||||
assert_params_in_request(
|
assert_params_in_dict(
|
||||||
content,
|
content,
|
||||||
['kind', 'app_id', 'app_display_name',
|
['kind', 'app_id', 'app_display_name',
|
||||||
'device_display_name', 'pushkey', 'lang', 'data']
|
'device_display_name', 'pushkey', 'lang', 'data']
|
||||||
|
@ -24,7 +24,7 @@ import synapse.util.stringutils as stringutils
|
|||||||
from synapse.api.auth import get_access_token_from_request
|
from synapse.api.auth import get_access_token_from_request
|
||||||
from synapse.api.constants import LoginType
|
from synapse.api.constants import LoginType
|
||||||
from synapse.api.errors import Codes, SynapseError
|
from synapse.api.errors import Codes, SynapseError
|
||||||
from synapse.http.servlet import assert_params_in_request, parse_json_object_from_request
|
from synapse.http.servlet import assert_params_in_dict, parse_json_object_from_request
|
||||||
from synapse.types import create_requester
|
from synapse.types import create_requester
|
||||||
|
|
||||||
from .base import ClientV1RestServlet, client_path_patterns
|
from .base import ClientV1RestServlet, client_path_patterns
|
||||||
@ -122,7 +122,7 @@ class RegisterRestServlet(ClientV1RestServlet):
|
|||||||
session = (register_json["session"]
|
session = (register_json["session"]
|
||||||
if "session" in register_json else None)
|
if "session" in register_json else None)
|
||||||
login_type = None
|
login_type = None
|
||||||
assert_params_in_request(register_json, ["type"])
|
assert_params_in_dict(register_json, ["type"])
|
||||||
|
|
||||||
try:
|
try:
|
||||||
login_type = register_json["type"]
|
login_type = register_json["type"]
|
||||||
@ -309,7 +309,7 @@ class RegisterRestServlet(ClientV1RestServlet):
|
|||||||
def _do_app_service(self, request, register_json, session):
|
def _do_app_service(self, request, register_json, session):
|
||||||
as_token = get_access_token_from_request(request)
|
as_token = get_access_token_from_request(request)
|
||||||
|
|
||||||
assert_params_in_request(register_json, ["user"])
|
assert_params_in_dict(register_json, ["user"])
|
||||||
user_localpart = register_json["user"].encode("utf-8")
|
user_localpart = register_json["user"].encode("utf-8")
|
||||||
|
|
||||||
handler = self.handlers.registration_handler
|
handler = self.handlers.registration_handler
|
||||||
@ -326,7 +326,7 @@ class RegisterRestServlet(ClientV1RestServlet):
|
|||||||
|
|
||||||
@defer.inlineCallbacks
|
@defer.inlineCallbacks
|
||||||
def _do_shared_secret(self, request, register_json, session):
|
def _do_shared_secret(self, request, register_json, session):
|
||||||
assert_params_in_request(register_json, ["mac", "user", "password"])
|
assert_params_in_dict(register_json, ["mac", "user", "password"])
|
||||||
|
|
||||||
if not self.hs.config.registration_shared_secret:
|
if not self.hs.config.registration_shared_secret:
|
||||||
raise SynapseError(400, "Shared secret registration is not enabled")
|
raise SynapseError(400, "Shared secret registration is not enabled")
|
||||||
@ -409,7 +409,7 @@ class CreateUserRestServlet(ClientV1RestServlet):
|
|||||||
|
|
||||||
@defer.inlineCallbacks
|
@defer.inlineCallbacks
|
||||||
def _do_create(self, requester, user_json):
|
def _do_create(self, requester, user_json):
|
||||||
assert_params_in_request(user_json, ["localpart", "displayname"])
|
assert_params_in_dict(user_json, ["localpart", "displayname"])
|
||||||
|
|
||||||
localpart = user_json["localpart"].encode("utf-8")
|
localpart = user_json["localpart"].encode("utf-8")
|
||||||
displayname = user_json["displayname"].encode("utf-8")
|
displayname = user_json["displayname"].encode("utf-8")
|
||||||
|
@ -28,7 +28,7 @@ from synapse.api.errors import AuthError, Codes, SynapseError
|
|||||||
from synapse.api.filtering import Filter
|
from synapse.api.filtering import Filter
|
||||||
from synapse.events.utils import format_event_for_client_v2, serialize_event
|
from synapse.events.utils import format_event_for_client_v2, serialize_event
|
||||||
from synapse.http.servlet import (
|
from synapse.http.servlet import (
|
||||||
assert_params_in_request,
|
assert_params_in_dict,
|
||||||
parse_integer,
|
parse_integer,
|
||||||
parse_json_object_from_request,
|
parse_json_object_from_request,
|
||||||
parse_string,
|
parse_string,
|
||||||
@ -637,7 +637,7 @@ class RoomMembershipRestServlet(ClientV1RestServlet):
|
|||||||
|
|
||||||
target = requester.user
|
target = requester.user
|
||||||
if membership_action in ["invite", "ban", "unban", "kick"]:
|
if membership_action in ["invite", "ban", "unban", "kick"]:
|
||||||
assert_params_in_request(content, ["user_id"])
|
assert_params_in_dict(content, ["user_id"])
|
||||||
target = UserID.from_string(content["user_id"])
|
target = UserID.from_string(content["user_id"])
|
||||||
|
|
||||||
event_content = None
|
event_content = None
|
||||||
|
@ -25,7 +25,7 @@ from synapse.api.constants import LoginType
|
|||||||
from synapse.api.errors import Codes, SynapseError
|
from synapse.api.errors import Codes, SynapseError
|
||||||
from synapse.http.servlet import (
|
from synapse.http.servlet import (
|
||||||
RestServlet,
|
RestServlet,
|
||||||
assert_params_in_request,
|
assert_params_in_dict,
|
||||||
parse_json_object_from_request,
|
parse_json_object_from_request,
|
||||||
)
|
)
|
||||||
from synapse.util.msisdn import phone_number_to_msisdn
|
from synapse.util.msisdn import phone_number_to_msisdn
|
||||||
@ -48,7 +48,7 @@ class EmailPasswordRequestTokenRestServlet(RestServlet):
|
|||||||
def on_POST(self, request):
|
def on_POST(self, request):
|
||||||
body = parse_json_object_from_request(request)
|
body = parse_json_object_from_request(request)
|
||||||
|
|
||||||
assert_params_in_request(body, [
|
assert_params_in_dict(body, [
|
||||||
'id_server', 'client_secret', 'email', 'send_attempt'
|
'id_server', 'client_secret', 'email', 'send_attempt'
|
||||||
])
|
])
|
||||||
|
|
||||||
@ -81,7 +81,7 @@ class MsisdnPasswordRequestTokenRestServlet(RestServlet):
|
|||||||
def on_POST(self, request):
|
def on_POST(self, request):
|
||||||
body = parse_json_object_from_request(request)
|
body = parse_json_object_from_request(request)
|
||||||
|
|
||||||
assert_params_in_request(body, [
|
assert_params_in_dict(body, [
|
||||||
'id_server', 'client_secret',
|
'id_server', 'client_secret',
|
||||||
'country', 'phone_number', 'send_attempt',
|
'country', 'phone_number', 'send_attempt',
|
||||||
])
|
])
|
||||||
@ -163,7 +163,7 @@ class PasswordRestServlet(RestServlet):
|
|||||||
logger.error("Auth succeeded but no known type! %r", result.keys())
|
logger.error("Auth succeeded but no known type! %r", result.keys())
|
||||||
raise SynapseError(500, "", Codes.UNKNOWN)
|
raise SynapseError(500, "", Codes.UNKNOWN)
|
||||||
|
|
||||||
assert_params_in_request(params, ["new_password"])
|
assert_params_in_dict(params, ["new_password"])
|
||||||
new_password = params['new_password']
|
new_password = params['new_password']
|
||||||
|
|
||||||
yield self._set_password_handler.set_password(
|
yield self._set_password_handler.set_password(
|
||||||
@ -228,7 +228,7 @@ class EmailThreepidRequestTokenRestServlet(RestServlet):
|
|||||||
@defer.inlineCallbacks
|
@defer.inlineCallbacks
|
||||||
def on_POST(self, request):
|
def on_POST(self, request):
|
||||||
body = parse_json_object_from_request(request)
|
body = parse_json_object_from_request(request)
|
||||||
assert_params_in_request(
|
assert_params_in_dict(
|
||||||
body,
|
body,
|
||||||
['id_server', 'client_secret', 'email', 'send_attempt'],
|
['id_server', 'client_secret', 'email', 'send_attempt'],
|
||||||
)
|
)
|
||||||
@ -261,7 +261,7 @@ class MsisdnThreepidRequestTokenRestServlet(RestServlet):
|
|||||||
@defer.inlineCallbacks
|
@defer.inlineCallbacks
|
||||||
def on_POST(self, request):
|
def on_POST(self, request):
|
||||||
body = parse_json_object_from_request(request)
|
body = parse_json_object_from_request(request)
|
||||||
assert_params_in_request(body, [
|
assert_params_in_dict(body, [
|
||||||
'id_server', 'client_secret',
|
'id_server', 'client_secret',
|
||||||
'country', 'phone_number', 'send_attempt',
|
'country', 'phone_number', 'send_attempt',
|
||||||
])
|
])
|
||||||
@ -359,7 +359,7 @@ class ThreepidDeleteRestServlet(RestServlet):
|
|||||||
@defer.inlineCallbacks
|
@defer.inlineCallbacks
|
||||||
def on_POST(self, request):
|
def on_POST(self, request):
|
||||||
body = parse_json_object_from_request(request)
|
body = parse_json_object_from_request(request)
|
||||||
assert_params_in_request(body, ['medium', 'address'])
|
assert_params_in_dict(body, ['medium', 'address'])
|
||||||
|
|
||||||
requester = yield self.auth.get_user_by_req(request)
|
requester = yield self.auth.get_user_by_req(request)
|
||||||
user_id = requester.user.to_string()
|
user_id = requester.user.to_string()
|
||||||
|
@ -19,7 +19,7 @@ from twisted.internet import defer
|
|||||||
|
|
||||||
from synapse.api import errors
|
from synapse.api import errors
|
||||||
from synapse.http.servlet import (
|
from synapse.http.servlet import (
|
||||||
assert_params_in_request,
|
assert_params_in_dict,
|
||||||
parse_json_object_from_request,
|
parse_json_object_from_request,
|
||||||
RestServlet
|
RestServlet
|
||||||
)
|
)
|
||||||
@ -81,7 +81,7 @@ class DeleteDevicesRestServlet(RestServlet):
|
|||||||
else:
|
else:
|
||||||
raise e
|
raise e
|
||||||
|
|
||||||
assert_params_in_request(body, ["devices"])
|
assert_params_in_dict(body, ["devices"])
|
||||||
|
|
||||||
yield self.auth_handler.validate_user_via_ui_auth(
|
yield self.auth_handler.validate_user_via_ui_auth(
|
||||||
requester, body, self.hs.get_ip_from_request(request),
|
requester, body, self.hs.get_ip_from_request(request),
|
||||||
|
@ -29,7 +29,7 @@ from synapse.api.constants import LoginType
|
|||||||
from synapse.api.errors import Codes, SynapseError, UnrecognizedRequestError
|
from synapse.api.errors import Codes, SynapseError, UnrecognizedRequestError
|
||||||
from synapse.http.servlet import (
|
from synapse.http.servlet import (
|
||||||
RestServlet,
|
RestServlet,
|
||||||
assert_params_in_request,
|
assert_params_in_dict,
|
||||||
parse_json_object_from_request,
|
parse_json_object_from_request,
|
||||||
parse_string,
|
parse_string,
|
||||||
)
|
)
|
||||||
@ -69,7 +69,7 @@ class EmailRegisterRequestTokenRestServlet(RestServlet):
|
|||||||
def on_POST(self, request):
|
def on_POST(self, request):
|
||||||
body = parse_json_object_from_request(request)
|
body = parse_json_object_from_request(request)
|
||||||
|
|
||||||
assert_params_in_request(body, [
|
assert_params_in_dict(body, [
|
||||||
'id_server', 'client_secret', 'email', 'send_attempt'
|
'id_server', 'client_secret', 'email', 'send_attempt'
|
||||||
])
|
])
|
||||||
|
|
||||||
@ -105,7 +105,7 @@ class MsisdnRegisterRequestTokenRestServlet(RestServlet):
|
|||||||
def on_POST(self, request):
|
def on_POST(self, request):
|
||||||
body = parse_json_object_from_request(request)
|
body = parse_json_object_from_request(request)
|
||||||
|
|
||||||
assert_params_in_request(body, [
|
assert_params_in_dict(body, [
|
||||||
'id_server', 'client_secret',
|
'id_server', 'client_secret',
|
||||||
'country', 'phone_number',
|
'country', 'phone_number',
|
||||||
'send_attempt',
|
'send_attempt',
|
||||||
@ -387,7 +387,7 @@ class RegisterRestServlet(RestServlet):
|
|||||||
add_msisdn = False
|
add_msisdn = False
|
||||||
else:
|
else:
|
||||||
# NB: This may be from the auth handler and NOT from the POST
|
# NB: This may be from the auth handler and NOT from the POST
|
||||||
assert_params_in_request(params, ["password"])
|
assert_params_in_dict(params, ["password"])
|
||||||
|
|
||||||
desired_username = params.get("username", None)
|
desired_username = params.get("username", None)
|
||||||
new_password = params.get("password", None)
|
new_password = params.get("password", None)
|
||||||
@ -565,7 +565,7 @@ class RegisterRestServlet(RestServlet):
|
|||||||
defer.Deferred:
|
defer.Deferred:
|
||||||
"""
|
"""
|
||||||
try:
|
try:
|
||||||
assert_params_in_request(threepid, ['medium', 'address', 'validated_at'])
|
assert_params_in_dict(threepid, ['medium', 'address', 'validated_at'])
|
||||||
except SynapseError as ex:
|
except SynapseError as ex:
|
||||||
if ex.errcode == Codes.MISSING_PARAM:
|
if ex.errcode == Codes.MISSING_PARAM:
|
||||||
# This will only happen if the ID server returns a malformed response
|
# This will only happen if the ID server returns a malformed response
|
||||||
|
@ -23,7 +23,7 @@ from twisted.internet import defer
|
|||||||
from synapse.api.errors import Codes, SynapseError
|
from synapse.api.errors import Codes, SynapseError
|
||||||
from synapse.http.servlet import (
|
from synapse.http.servlet import (
|
||||||
RestServlet,
|
RestServlet,
|
||||||
assert_params_in_request,
|
assert_params_in_dict,
|
||||||
parse_json_object_from_request,
|
parse_json_object_from_request,
|
||||||
)
|
)
|
||||||
|
|
||||||
@ -50,7 +50,7 @@ class ReportEventRestServlet(RestServlet):
|
|||||||
user_id = requester.user.to_string()
|
user_id = requester.user.to_string()
|
||||||
|
|
||||||
body = parse_json_object_from_request(request)
|
body = parse_json_object_from_request(request)
|
||||||
assert_params_in_request(body, ("reason", "score"))
|
assert_params_in_dict(body, ("reason", "score"))
|
||||||
|
|
||||||
if not isinstance(body["reason"], string_types):
|
if not isinstance(body["reason"], string_types):
|
||||||
raise SynapseError(
|
raise SynapseError(
|
||||||
|
Loading…
Reference in New Issue
Block a user