Clarify that invite->knock is not a valid transition (#1717)
This reverts https://github.com/matrix-org/matrix-spec/pull/1175 See https://github.com/matrix-org/matrix-spec/issues/1710
This commit is contained in:
parent
170626da67
commit
c4e69d8cb1
5 changed files with 9 additions and 4 deletions
|
@ -0,0 +1 @@
|
||||||
|
For room versions 7 through 11: Clarify that `invite->knock` is not a legal transition.
|
|
@ -117,7 +117,8 @@ The rules are as follows:
|
||||||
7. If `membership` is `knock`:
|
7. If `membership` is `knock`:
|
||||||
1. If the `join_rule` is anything other than `knock`, reject.
|
1. If the `join_rule` is anything other than `knock`, reject.
|
||||||
2. If `sender` does not match `state_key`, reject.
|
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.
|
4. Otherwise, reject.
|
||||||
8. Otherwise, the membership is unknown. Reject.
|
8. Otherwise, the membership is unknown. Reject.
|
||||||
5. If the `sender`'s current membership state is not `join`, reject.
|
5. If the `sender`'s current membership state is not `join`, reject.
|
||||||
|
|
|
@ -194,7 +194,8 @@ The rules are as follows:
|
||||||
If the `join_rule` is anything other than `knock` or
|
If the `join_rule` is anything other than `knock` or
|
||||||
`knock_restricted`, reject.
|
`knock_restricted`, reject.
|
||||||
2. If `sender` does not match `state_key`, reject.
|
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.
|
4. Otherwise, reject.
|
||||||
8. Otherwise, the membership is unknown. Reject.
|
8. Otherwise, the membership is unknown. Reject.
|
||||||
5. If the `sender`'s current membership state is not `join`, reject.
|
5. If the `sender`'s current membership state is not `join`, reject.
|
||||||
|
|
|
@ -200,7 +200,8 @@ The rules are as follows:
|
||||||
1. If the `join_rule` is anything other than `knock` or
|
1. If the `join_rule` is anything other than `knock` or
|
||||||
`knock_restricted`, reject.
|
`knock_restricted`, reject.
|
||||||
2. If `sender` does not match `state_key`, reject.
|
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.
|
4. Otherwise, reject.
|
||||||
8. Otherwise, the membership is unknown. Reject.
|
8. Otherwise, the membership is unknown. Reject.
|
||||||
5. If the `sender`'s current membership state is not `join`, reject.
|
5. If the `sender`'s current membership state is not `join`, reject.
|
||||||
|
|
|
@ -139,7 +139,8 @@ The rules are as follows:
|
||||||
If `membership` is `knock`:
|
If `membership` is `knock`:
|
||||||
1. If the `join_rule` is anything other than `knock`, reject.
|
1. If the `join_rule` is anything other than `knock`, reject.
|
||||||
2. If `sender` does not match `state_key`, reject.
|
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.
|
4. Otherwise, reject.
|
||||||
7. Otherwise, the membership is unknown. Reject.
|
7. Otherwise, the membership is unknown. Reject.
|
||||||
5. If the `sender`'s current membership state is not `join`, reject.
|
5. If the `sender`'s current membership state is not `join`, reject.
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue