core-agent-linux/qrexec
Marek Marczykowski-Górecki 8f00bdb4a6 qrexec: process vchan data queue (esp MSG_EXIT_CODE) before sending anything
In case of remote process exit even when some messages are still
waiting, vchan connection can be already closed. If we try to send some
data in this case (for example stdout of local process), there will be
an error, which will terminate qrexec-client-vm/qrexec-agent child. So
first check vchan data (where could be MSG_EXIT_CODE queued) , then
local process.

There is still some race condition in this code - remote process could
exit just after we check vchan, but before we send some data. But this
is much less probable and in the worst case we only loose remote process
exit code.
2015-03-17 12:39:30 +01:00
..
Makefile qrexec: handle data vchan directly from qrexec-client-vm 2015-03-16 21:10:25 +01:00
qrexec-agent-data.c qrexec: process vchan data queue (esp MSG_EXIT_CODE) before sending anything 2015-03-17 12:39:30 +01:00
qrexec-agent.c qrexec: minor readability fix 2015-03-16 21:41:36 +01:00
qrexec-agent.h qrexec: return remote process status as qrexec-client-vm exit code 2015-03-16 21:32:34 +01:00
qrexec-client-vm.c qrexec: return remote process status as qrexec-client-vm exit code 2015-03-16 21:32:34 +01:00
qrexec-fork-server.c qrexec: fork into background after setting up qrexec-fork-server socket 2015-02-22 03:12:54 +01:00
qubes-rpc-multiplexer qubes-rpc: log service stderr to syslog instead of sending to dom0 (#842) 2014-05-05 05:22:06 +02:00