From ef80574002ff106acdb20c59ea9b4d9ed1b0691d Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Marek=20Marczykowski-G=C3=B3recki?= Date: Tue, 20 Jun 2017 23:41:12 +0200 Subject: [PATCH] qrexec: exit with code 126 when service request was refused Exit code 1 is very common in all kind of programs, including qrexec services, so it is hard to distinguish remote failure from service call refusal. Use something from top of the range here (but not 127, as it is commonly used to report "Command not found") QubesOS/qubes-issues#2861 (cherry picked from commit d2aa21625cc725277ba9209dde052c91c82011a0) --- qrexec/qrexec-client-vm.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/qrexec/qrexec-client-vm.c b/qrexec/qrexec-client-vm.c index c742158..b023045 100644 --- a/qrexec/qrexec-client-vm.c +++ b/qrexec/qrexec-client-vm.c @@ -109,7 +109,7 @@ int main(int argc, char **argv) ret = read(trigger_fd, &exec_params, sizeof(exec_params)); if (ret == 0) { fprintf(stderr, "Request refused\n"); - exit(1); + exit(126); } if (ret < 0 || ret != sizeof(exec_params)) { perror("read");