New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

qrexec-agent crashes with "select: Bad file descriptor" #993

Closed
marmarek opened this Issue May 9, 2015 · 0 comments

Comments

Projects
None yet
1 participant
@marmarek
Member

marmarek commented May 9, 2015

Steps to reproduce:

  1. Start some qrexec service which does not wait for data on stdin (for example qvm-run --dispvm sleep 10d), wait until the service is really started.
  2. Interrupt it (Ctrl-C). Note that until the service reads its stdin, it will not know that calling side was terminated. In above example DispVM will be still running.
  3. Start some service again (can be the same). This one does not need to ignore its stdin.
  4. Terminate the first service - for example run qvm-run dispX "killall sleep" where dispX is the name of first DispVM.
  5. Observe that qrexec-agent crashes.

@marmarek marmarek self-assigned this May 9, 2015

@marmarek marmarek added this to the Release 3.0 milestone May 9, 2015

marmarek added a commit to marmarek/old-qubes-core-admin-linux that referenced this issue May 10, 2015

qrexec: do not send spurious MSG_SERVICE_REFUSED
This causes closing connection (FD) to still alive client.

Fixes QubesOS/qubes-issues#993
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment