doc: internals/access: update documentation vs current state

Update docs to match implementation.
This commit is contained in:
Pauli Virtanen 2023-11-29 18:47:46 +02:00
parent 08a4590070
commit 9fdf221705

View file

@ -82,15 +82,14 @@ module does nothing.
If the property is not set it will go through a set of checks to determine If the property is not set it will go through a set of checks to determine
the permissions for a client. See the \ref page_module_access documentation the permissions for a client. See the \ref page_module_access documentation
for details, particularly on the values documented below. Depending on the for details.
value of the \ref PW_KEY_ACCESS property one the following happens:
- `"allowed"`, `"unrestricted"`: ALL permissions are set on the core Depending on the resolution, it grants permissions to the client as follows:
- `"unrestricted"`: ALL permissions are set on the core
object and the client will be able to resume. object and the client will be able to resume.
- `"restricted"`, `"flatpak"`, `"$access.force"`: No permissions are set on - any other value: No permissions are set on the core object
the core object and the client will be suspended. and the client will be suspended.
- `"rejected"`: An error is sent to the client and the client is
suspended.
As detailed above, the client may be suspended. In that case the session As detailed above, the client may be suspended. In that case the session
manager or another client is required to configure permissions on the object manager or another client is required to configure permissions on the object
@ -101,8 +100,7 @@ for it to resume.
The session manager listens for new clients to appear. It will use the The session manager listens for new clients to appear. It will use the
\ref PW_KEY_ACCESS property to determine what to do. \ref PW_KEY_ACCESS property to determine what to do.
For clients that are suspended with `"restricted"`, `"flatpak"` or For clients that are not unrestricted, the session manager needs to set permissions on the
`"$access.force"` access, the session manager needs to set permissions on the
client for the various PipeWire objects in the graph that it is allowed to client for the various PipeWire objects in the graph that it is allowed to
interact with. To resume a client, the session manager needs to set interact with. To resume a client, the session manager needs to set
permission `R` on the core object for the client. permission `R` on the core object for the client.