diff options
author | Simon McVittie <smcv@collabora.com> | 2017-12-11 17:39:31 +0000 |
---|---|---|
committer | Simon McVittie <smcv@collabora.com> | 2018-01-11 18:24:16 +0000 |
commit | e4283c76fa1bfe78d38a54aa7cc29406731ac693 (patch) | |
tree | 70a2d9831cace8367df69449e39ad8a19ccbed47 /doc/dbus-specification.xml | |
parent | 2c19572f7a224ae9d7126f5f6d6be458c54a2e44 (diff) |
spec: Document NEGOTIATE_UNIX_FD, AGREE_UNIX_FD in state machines
Signed-off-by: Simon McVittie <smcv@collabora.com>
Reviewed-by: Philip Withnall <withnall@endlessm.com>
Bug: https://bugs.freedesktop.org/show_bug.cgi?id=104224
Diffstat (limited to 'doc/dbus-specification.xml')
-rw-r--r-- | doc/dbus-specification.xml | 68 |
1 files changed, 63 insertions, 5 deletions
diff --git a/doc/dbus-specification.xml b/doc/dbus-specification.xml index a3a0bd42..5884c020 100644 --- a/doc/dbus-specification.xml +++ b/doc/dbus-specification.xml @@ -2739,9 +2739,19 @@ </listitem> <listitem> <para> - Receive OK → send - BEGIN, terminate auth - conversation, authenticated + Receive OK → <emphasis>authenticated</emphasis>, + choose one: + + <simplelist> + <member> + send NEGOTIATE_UNIX_FD, goto + <emphasis>WaitingForAgreeUnixFD</emphasis> + </member> + + <member> + send BEGIN, terminate auth conversation (successfully) + </member> + </simplelist> </para> </listitem> <listitem> @@ -2761,8 +2771,19 @@ <itemizedlist> <listitem> <para> - Receive OK → send BEGIN, terminate auth - conversation, <emphasis>authenticated</emphasis> + Receive OK → <emphasis>authenticated</emphasis>, + choose one: + + <simplelist> + <member> + send NEGOTIATE_UNIX_FD, goto + <emphasis>WaitingForAgreeUnixFD</emphasis> + </member> + + <member> + send BEGIN, terminate auth conversation (successfully) + </member> + </simplelist> </para> </listitem> <listitem> @@ -2819,6 +2840,36 @@ </para> </formalpara> + <formalpara> + <title><emphasis>WaitingForAgreeUnixFD</emphasis></title> + <para> + By the time this state is reached, the client has already + been authenticated. + <itemizedlist> + <listitem> + <para> + Receive AGREE_UNIX_FD → enable Unix fd passing, + send BEGIN, terminate auth conversation (successfully) + </para> + </listitem> + + <listitem> + <para> + Receive ERROR → disable Unix fd passing, + send BEGIN, terminate auth conversation (successfully) + </para> + </listitem> + + <listitem> + <para> + Receive anything else → terminate auth + conversation, disconnect + </para> + </listitem> + </itemizedlist> + </para> + </formalpara> + </sect3> <sect3 id="auth-states-server"> @@ -2998,6 +3049,13 @@ <listitem> <para> + Receive NEGOTIATE_UNIX_FD → send AGREE_UNIX_FD + or ERROR, goto <emphasis>WaitingForBegin</emphasis> + </para> + </listitem> + + <listitem> + <para> Receive CANCEL → send REJECTED [mechs], goto <emphasis>WaitingForAuth</emphasis> </para> |