Disallow invite->knock membership changes

pull/977/head
Andrew Morgan 4 years ago
parent 6c75b83b99
commit 7dcff8f2e1

@ -54,7 +54,7 @@ rules from room version 5 are:
a. If `membership` is `knock`: a. If `membership` is `knock`:
i. If the `join_rule` is anything other than `knock`, reject. i. If the `join_rule` is anything other than `knock`, reject.
ii. If `sender` does not match `state_key`, reject. ii. If `sender` does not match `state_key`, reject.
iii. If the `sender`'s membership is not `ban`, `knock` or `join`, allow. iii. If the `sender`'s membership is not `ban`, `knock`, `invite` or `join`, allow.
iv. Otherwise, reject. iv. Otherwise, reject.
``` ```
@ -67,7 +67,8 @@ rules from room version 5 are:
- a.ii is justified as one user should not be able to knock on behalf of - a.ii is justified as one user should not be able to knock on behalf of
another user. another user.
- a.iii is justified as knocks should not be allowed if the knocking user - a.iii is justified as knocks should not be allowed if the knocking user
has been banned from the room, or if they are already in the room. has been banned from the room, has already knocked on the room, is
invited to the room or if they are already in the room.
- Knocks are not restricted by power level like invites are. The `join_rules` - Knocks are not restricted by power level like invites are. The `join_rules`
are already used to enforce whether someone can or cannot knock. are already used to enforce whether someone can or cannot knock.

Loading…
Cancel
Save