state-res: Disallow invite->knock membership transition
Due to a spec clarification that reverts the previous spec clarification
This commit is contained in:
parent
631911a1de
commit
812625fab4
@ -1,5 +1,11 @@
|
||||
# [unreleased]
|
||||
|
||||
Bug fixes:
|
||||
|
||||
* Disallow `invite` -> `knock` membership transition
|
||||
* The spec was determined to be right about rejecting it in the first place:
|
||||
<https://github.com/matrix-org/matrix-spec/pull/1717>
|
||||
|
||||
# 0.10.0
|
||||
|
||||
Improvements:
|
||||
|
@ -702,7 +702,7 @@ fn valid_membership_change(
|
||||
false
|
||||
} else {
|
||||
// 2. If `sender` does not match `state_key`, reject.
|
||||
// 3. If the `sender`'s current membership is not `ban` or `join`, allow.
|
||||
// 3. If the `sender`'s current membership is not `ban`, `invite`, or `join`, allow.
|
||||
// 4. Otherwise, reject.
|
||||
if sender != target_user {
|
||||
warn!(
|
||||
@ -711,11 +711,13 @@ fn valid_membership_change(
|
||||
"Can't make another user join, sender did not match target"
|
||||
);
|
||||
false
|
||||
} else if matches!(sender_membership, MembershipState::Ban | MembershipState::Join)
|
||||
{
|
||||
} else if matches!(
|
||||
sender_membership,
|
||||
MembershipState::Ban | MembershipState::Invite | MembershipState::Join
|
||||
) {
|
||||
warn!(
|
||||
?target_user_membership_event_id,
|
||||
"Membership state of ban or join are invalid",
|
||||
"Membership state of ban, invite or join are invalid",
|
||||
);
|
||||
false
|
||||
} else {
|
||||
|
Loading…
x
Reference in New Issue
Block a user