From 37bbd649c40bd371c7c1db844cc6b9789a8545df Mon Sep 17 00:00:00 2001 From: Erik Johnston Date: Fri, 14 Nov 2014 15:19:58 +0000 Subject: [PATCH] Add a section about state/auth querying --- drafts/flows_and_auth.rst | 15 +++++++++++++-- 1 file changed, 13 insertions(+), 2 deletions(-) diff --git a/drafts/flows_and_auth.rst b/drafts/flows_and_auth.rst index 9aa7c673..5fd6b8f1 100644 --- a/drafts/flows_and_auth.rst +++ b/drafts/flows_and_auth.rst @@ -98,7 +98,7 @@ Creation A `m.room.create` must be the first event in the room. -Ban, kick and redaction +Ban, Kick and Redaction +++++++++++++++++++++++ To ban or kick another user in the room, or to redact an event, then the user @@ -118,7 +118,7 @@ A user may send an event if all the following hold true: if the event is a message or state event respectively. -Unauthorized events +Unauthorized Events ------------------- An unauthorized event should not be accepted into the event graph, i.e. new @@ -133,3 +133,14 @@ it is included in the event graph. A server may emit a warning to a remote server if it references an event it considers unauthorized. + + +State and Authorization Querying +-------------------------------- + +A local server may become aware that it and a remote server's view of the +current state are inconsistent. The local server may then send its current +state to the remote, which responds with its view of the current state. Both +servers should then recompute the local state. If they are conforming +implementations then they will reach the same conclusions. +