Skip to content
This repository has been archived by the owner on Apr 26, 2024. It is now read-only.

Commit

Permalink
Remove the unspecced and bugged PUT /knock/{roomIdOrAlias} endpoint
Browse files Browse the repository at this point in the history
  • Loading branch information
sandhose committed Mar 2, 2023
1 parent c4f4dc3 commit 24c732f
Show file tree
Hide file tree
Showing 2 changed files with 2 additions and 15 deletions.
1 change: 1 addition & 0 deletions changelog.d/15189.misc
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
Remove the unspecced `PUT` on the `/knock/{roomIdOrAlias}` endpoint.
16 changes: 1 addition & 15 deletions synapse/rest/client/knock.py
Original file line number Diff line number Diff line change
Expand Up @@ -13,7 +13,7 @@
# See the License for the specific language governing permissions and
# limitations under the License.
import logging
from typing import TYPE_CHECKING, Awaitable, Dict, List, Optional, Tuple
from typing import TYPE_CHECKING, Dict, List, Tuple

from synapse.api.constants import Membership
from synapse.api.errors import SynapseError
Expand All @@ -24,8 +24,6 @@
parse_strings_from_args,
)
from synapse.http.site import SynapseRequest
from synapse.logging.opentracing import set_tag
from synapse.rest.client.transactions import HttpTransactionCache
from synapse.types import JsonDict, RoomAlias, RoomID

if TYPE_CHECKING:
Expand All @@ -45,15 +43,13 @@ class KnockRoomAliasServlet(RestServlet):

def __init__(self, hs: "HomeServer"):
super().__init__()
self.txns = HttpTransactionCache(hs)
self.room_member_handler = hs.get_room_member_handler()
self.auth = hs.get_auth()

async def on_POST(
self,
request: SynapseRequest,
room_identifier: str,
txn_id: Optional[str] = None,
) -> Tuple[int, JsonDict]:
requester = await self.auth.get_user_by_req(request)

Expand Down Expand Up @@ -86,23 +82,13 @@ async def on_POST(
target=requester.user,
room_id=room_id,
action=Membership.KNOCK,
txn_id=txn_id,
third_party_signed=None,
remote_room_hosts=remote_room_hosts,
content=event_content,
)

return 200, {"room_id": room_id}

def on_PUT(
self, request: SynapseRequest, room_identifier: str, txn_id: str
) -> Awaitable[Tuple[int, JsonDict]]:
set_tag("txn_id", txn_id)

return self.txns.fetch_or_execute_request(
request, self.on_POST, request, room_identifier, txn_id
)


def register_servlets(hs: "HomeServer", http_server: HttpServer) -> None:
KnockRoomAliasServlet(hs).register(http_server)

0 comments on commit 24c732f

Please sign in to comment.