Add CLI flags for unattended acquisition#112
Open
Nxtmaster10 wants to merge 2 commits into
Open
Conversation
Nxtmaster10
force-pushed
the
unattended-flags
branch
from
July 17, 2026 16:08
8664d44 to
86f78e6
Compare
Contributor
Author
|
rebased onto main so the fix from #111 is also on this branch - your documentation changes look good ^^ |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
Adds CLI flags for every interactive prompt so a full acquisition can be scripted end to end:
-backup/-bsms,all,none-download/-dall,non-system,none-remove-trusted/-ryes,no-intrusion-logs/-iyes,no-non-interactive/-nNo flag passed keeps today's interactive behavior exactly. Invalid values fail before the acquisition starts, listing the valid tokens. With
-non-interactive, androidqf errors upfront if a prompt could be reached without its flag (and if multiple devices are attached without-serial, or-modulenames no module) instead of silently picking a default - a forensic tool should not quietly decide what to collect.Design notes
systemPause()is gated on-non-interactiverather than TTY detection: explicit, deterministic, no new dependency, and it cannot change behavior for anyone not passing the flag.intrusion_logs- the flag cannot force the module onto a non-AAPM device.-intrusion-logsis required (when the module will run) even on non-AAPM devices, and-remove-trustedeven for encrypted streaming output. In both cases the value is harmlessly unused, mirroring how-remove-trustedis ignored with-download none; checking those conditions during validation would need device or key-file I/O before the run starts.adb backupstill requires authorizing the backup on the device - an Android security control no flag can bypass. Only-backup noneis fully unattended; the README and the-backuphelp text say so.The- landed on main, rebasedflag.BoolVar(&verbose, "f", ...)error will be fixed with fix: matching of the "f" cli option to the fast var #111.