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
pull/1730/head
kegsay 9 months ago committed by GitHub
parent 170626da67
commit c4e69d8cb1
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194

@ -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…
Cancel
Save