Skip to content
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: Missing ordering between library and tool upgrades #9184

Closed
DemiMarie opened this issue May 1, 2024 · 0 comments · Fixed by QubesOS/qubes-core-qrexec#155
Closed
Assignees
Labels
C: core diagnosed Technical diagnosis has been performed (see issue comments). P: critical Priority: critical. Between "major" and "blocker" in severity. pr submitted A pull request has been submitted for this issue. regression A bug in which a supported feature that worked in a prior Qubes OS release has stopped working. T: bug Type: bug report. A problem or defect resulting in unintended behavior in something that exists.

Comments

@DemiMarie
Copy link

How to file a helpful issue

Qubes OS release

git main only, thankfully

Brief summary

QubesOS/qubes-core-qrexec@a893050 made qrexec-agent and qrexec-client depend on a newer libqrexec-utils.so.3, but this was not reflected in the RPM dependencies. As a result, the user could upgrade the command-line tools but not the shared library, resulting in a situation that is extremely difficult to recover from as qrexec does not work. The only way I can think of to recover (without a rescue system or dnf downgrade) is to start VMs (which thankfully doesn’t need qrexec), copy the data into dom0 via (possibly repeated) clipboard operations (using base64 in dom0 to decode it to binary and appending to a file), and then call rpmcanon and rpm -U manually.

Steps to reproduce

See above.

Expected behavior

RPM dependencies prevent breaking qrexec.

Actual behavior

RPM dependencies do not prevent breaking qrexec.

@DemiMarie DemiMarie added T: bug Type: bug report. A problem or defect resulting in unintended behavior in something that exists. C: core P: critical Priority: critical. Between "major" and "blocker" in severity. labels May 1, 2024
@DemiMarie DemiMarie self-assigned this May 1, 2024
@DemiMarie DemiMarie added the regression A bug in which a supported feature that worked in a prior Qubes OS release has stopped working. label May 1, 2024
@andrewdavidwong andrewdavidwong added diagnosed Technical diagnosis has been performed (see issue comments). pr submitted A pull request has been submitted for this issue. labels May 1, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
C: core diagnosed Technical diagnosis has been performed (see issue comments). P: critical Priority: critical. Between "major" and "blocker" in severity. pr submitted A pull request has been submitted for this issue. regression A bug in which a supported feature that worked in a prior Qubes OS release has stopped working. T: bug Type: bug report. A problem or defect resulting in unintended behavior in something that exists.
Projects
None yet
Development

Successfully merging a pull request may close this issue.

2 participants