core-agent-linux/qrexec
Marek Marczykowski-Górecki c8140375fa
qrexec: add configurable waiting for session before starting service
Some services require GUI access. Make qrexec-agent handling this, based
on per-service configuration, instead of forcing every caller to call
qubes.WaitForSession service first. This is especially important for
Disposable VMs, because those are destroyed after a single service call.

This needs to be done in qrexec-agent (instead of service script, or
qubes-rpc-multiplexer), because agent will behave differently depending
on GUI session being available or not. Namely, will use
qrexec-fork-server (so the process will be a child of session leader),
or will open new session.

Service configuration lives in /etc/qubes/rpc-config/SERVICE_NAME, can
can contain 'key=value' entries (no space around '=' allowed). Currently
the only settings supported is 'wait-for-session', with value either '0'
or '1'.

QubesOS/qubes-issues#2974
2017-08-09 00:58:48 +02:00
..
Makefile qrexec: ship pam configuration for debian 2017-07-11 20:21:46 +02:00
qrexec-agent-data.c qrexec: do not shutdown stdout socket inherited from parent 2017-06-21 11:21:41 +02:00
qrexec-agent.c qrexec: add configurable waiting for session before starting service 2017-08-09 00:58:48 +02:00
qrexec-agent.h qrexec: add configurable waiting for session before starting service 2017-08-09 00:58:48 +02:00
qrexec-client-vm.c qrexec: fix reporting exit code in qrexec-client-vm 2017-06-21 11:21:40 +02:00
qrexec-fork-server.c qrexec: fork into background after setting up qrexec-fork-server socket 2015-02-22 03:12:54 +01:00
qrexec.pam qrexec: use PAM directly instead of calling su to setup the session 2017-07-05 02:17:43 +02:00
qrexec.pam.debian qrexec: ship pam configuration for debian 2017-07-11 20:21:46 +02:00
qubes-rpc-multiplexer qrexec: add service argument support 2016-03-27 04:30:44 +02:00