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

WIP: Use native Python functions instead of shelling out #1749

Draft
wants to merge 32 commits into
base: main
Choose a base branch
from

Conversation

legoktm
Copy link
Member

@legoktm legoktm commented Dec 20, 2023

WIP because tests are failing and this builds on top of #1669

rocodes and others added 30 commits December 13, 2023 16:03
…ypt).

DRY up qrexec calling methods. Replace ExportStatus values with new values (see securedrop-export 80-support-veracrypt).

Rename methods in export.py for clarity. Remove disk-test (combine
disk-test and usb-test).
It now needs to emit the correct values rather than just returning
statuses.
…eraCrypt drive and unlocking VC drive, using cryptsetup.
…either bad VC passphrase or corrupted drive). Add logic to detect and use VeraCrypt drives.

Use new Status and Service for exporting files. Add method to cli.py to check all volumes and return most detailed information about each candidate Volume, including mounting if the volume is already unlocked.
…c test coverage.

Changes to VC unlock logic and service.py to mount LUKS drive immediately after unlocking.
mypy noted a theoretical case in which `udisksctl mount` exits with a 0
status code but doesn't return our expected output. In this case just
raise an exception as we couldn't figure out the mount point.

While we're at it, add a test case to verify the mountpoint is parsed
correctly.
I think this was just a mistake because the volume is already unmounted
before the volume is closed.
This should hopefully fix CI and running in containers that don't
have an active rsyslog daemon.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

2 participants