Switch all config options that can be toggled to "=n" when not active from board configs
Nobody has claimed this yet.
- Dominant language
- Makefile
- Stars
- 1.6k
- Forks
- 211
- Avg merge
- 4d 21h
- Merged PRs (30d)
- 6
Description
config-gui.sh is growing in features.
Current board configs either comment board options when deactivated or set them to `option=n`
The later is better, concrete example:
- DEBUG is commented in board config, which is packed into CBFS through board.cpio. Since this is commented, the debug=x doesn't exist (not considered)
- User toggles debugging into config gui. This sets `debug=y` into config.user overlay, which is applied on boot by cbfs-init.sh and considered when flashed to rom and rebooted.
- Heads picks the change as tampering. User can reseal or not secrets, produce debug.log and upload for bug report.
- User deactivated debug, expects logic to save as override which if the same as board config, produce no change and save, flash back to cbfs, reboot
- since board config never had debug=n, but now config.user has debug=n, Heads measures config.user and sees a change, reports it as tampering.
- User has to reseal secrets since debug=n was never set at the first place.
Tldr: if we want users to be able to test settings without resealing and rollback, options that are deactivated needs to be set to =n in board config so that when toggled back, Heads doesn't see a change because there are none.
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
Start with config-gui.sh and cbfs-init.sh, then inspect the board configuration files packed into board.cpio for options that are commented out when inactive. Identify every toggleable option that needs an explicit =n value and verify that disabling it produces no effective config.user change or tampering report after reboot.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- shell
- Domain
- security
- Issue type
- Bug
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Active
- Clarity
- Mostly clear
- Newbie friendliness
- 52/100