Skip to content

Commit 5ced777

Browse files
committed
Document rpc config until exit-on-server-eof
For: QubesOS/qubes-issues#9176
1 parent 43f49f0 commit 5ced777

File tree

1 file changed

+42
-12
lines changed

1 file changed

+42
-12
lines changed

qubes-rpc-config/README

+42-12
Original file line numberDiff line numberDiff line change
@@ -19,16 +19,55 @@ Configuration syntax:
1919
* String values: must be enclosed by single quotes ('), escape sequences
2020
are unsupported, e.g. 'str'.
2121

22+
* Service types: which kind of services does the configuration option
23+
supports, executables and/or sockets. For socket-based services, see
24+
https://www.qubes-os.org/doc/qrexec-socket-services/
25+
2226
Supported settings:
2327

28+
* exit-on-client-eof:
29+
* Description: Exit when the client shuts down its input stream, client
30+
sends EOF to stdin.
31+
* Conflicting options: if set to 'true', cannot set the 'force-user'
32+
option.
33+
* Service type: socket
34+
* Value type: boolean
35+
* Accepted values: true, false
36+
* Default value: false
37+
* Example: exit-on-client-eof=true
38+
39+
* exit-on-service-eof:
40+
* Description: Exit when the service shuts down its output stream,
41+
service sends EOF to stdout.
42+
* Conflicting options: if set to 'true', cannot set the 'force-user'
43+
option.
44+
* Service type: socket
45+
* Value type: boolean
46+
* Accepted values: true, false
47+
* Default value: false
48+
* Example: exit-on-service-eof=true
49+
2450
* force-user:
2551
* Description: Enforce that service should be run by the specified
2652
username. Useful to set the user at the target qube, which will be
2753
passed directly to PAM without being interpreted by Qrexec, instead of
2854
having to modify the policy in dom0.
55+
* Service type: executable, socket
2956
* Value type: string
3057
* Default value: same user as in the policy, else it is 'user'.
31-
* Example: 'user'
58+
* Example: force-user='user'
59+
60+
* skip-service-descriptor:
61+
* Description: Skip sending service descriptor and go for the actual
62+
data directly. Useful to skip sending metadata to socket-based
63+
services.
64+
* Conflicting options: if set to 'true', cannot set the 'force-user'
65+
option.
66+
* Service type: socket
67+
* Value type: boolean
68+
* Accepted values: true, false.
69+
* Default value: false
70+
* Example: skip-service-descriptor=true
3271

3372
* wait-for-session:
3473
* Description: Wait for full GUI session initialization before starting
@@ -37,18 +76,9 @@ Supported settings:
3776
because there is no GUI running at all), service will never be
3877
started. It is possible for the service to be started even if
3978
qubes.WaitForSession fails, so the service must not depend on setting
40-
"wait-for-session=true" for security.
79+
this option to 'true' for security.
80+
* Service type: executable, socket
4181
* Value type: boolean
4282
* Accepted values: true, false, 0, 1.
4383
* Default value: false
4484
* Example: wait-for-session=true
45-
46-
* skip-service-descriptor:
47-
* Description: Skip sending service descriptor and go for the actual
48-
data directly. Useful to skip sending metadata to socket-based
49-
services, thus the option is valid only for socket services, not
50-
executables. See https://www.qubes-os.org/doc/qrexec-socket-services/
51-
* Value type: boolean
52-
* Accepted values: true, false.
53-
* Default value: false
54-
* Example: skip-service-descriptor=true

0 commit comments

Comments
 (0)