Clarify if a resident server cannot issue a join vs. if they're unsure if the user is allowed to join.
This commit is contained in:
parent
6b6aa2449a
commit
d329c216c4
1 changed files with 9 additions and 4 deletions
|
@ -67,13 +67,18 @@ It is possible for a resident homeserver (one which receives a `/make_join` /
|
||||||
`/send_join` request to not know if the user is in some of the allowed rooms (due
|
`/send_join` request to not know if the user is in some of the allowed rooms (due
|
||||||
to not participating in them). If the user is not in any of the allowed rooms that
|
to not participating in them). If the user is not in any of the allowed rooms that
|
||||||
are known to the homeserver it should return an error response with HTTP status code
|
are known to the homeserver it should return an error response with HTTP status code
|
||||||
of 400 with an `errcode` of `M_CANNOT_ALLOW`. The joining server should attempt to
|
of 400 with an `errcode` of `M_UNABLE_TO_AUTHORISE_JOIN`. The joining server should
|
||||||
join via another resident homeserver. If the resident homeserver knows that the
|
attempt to join via another resident homeserver. If the resident homeserver knows
|
||||||
user is not in *any* of the allowed rooms it should return an error response with
|
that the user is not in *any* of the allowed rooms it should return an error response
|
||||||
HTTP status code of 403 and an `errcode` of `M_FORBIDDEN`. Note that it is a
|
with HTTP status code of 403 and an `errcode` of `M_FORBIDDEN`. Note that it is a
|
||||||
configuration error if there are allowed rooms with no participating authorised
|
configuration error if there are allowed rooms with no participating authorised
|
||||||
servers.
|
servers.
|
||||||
|
|
||||||
|
A chosen resident homeserver might also be unable to issue invites, in this case
|
||||||
|
it should return an error response with HTTP status code of 400 and an `errcode`
|
||||||
|
of `M_CANNOT_ALLOW`. The joining server should attempt to join via another
|
||||||
|
resident homeserver.
|
||||||
|
|
||||||
From the perspective of the [auth rules](https://spec.matrix.org/unstable/rooms/v1/#authorization-rules),
|
From the perspective of the [auth rules](https://spec.matrix.org/unstable/rooms/v1/#authorization-rules),
|
||||||
the `restricted` join rule has the same behavior as `public`, with the additional
|
the `restricted` join rule has the same behavior as `public`, with the additional
|
||||||
caveat that servers must ensure that:
|
caveat that servers must ensure that:
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue