OpenSK
OpenSK copied to clipboard
Uv bio enrollment, continued
Rebases and continues #718 .
The second commits adds the following missing features:
- PIN authentication of BioEnrollment subcommands that require it.
- A compile flag for all new features.
- Cleanup and generalization of the fingerprint API. (Example:
setloglevelcan be part of theTockEnvimplementation, but shouldn't be included in the API.) - A more useful fake implementation of the fingerprint API.
- Customization of Veridian's hardcoded numbers.
- Rollback of customizations that are specific to Veridian.
- Whether or not state is held is now left to the implementer of the fingerprint API. BioEnrollment is explicitly not a stateful command according to the specification.
- Don't ignore errors from hardware interaction, but forward them.
- Correct handling of UV retries: Reset everywhere necesary, and don't decrease the retry counter when asking for UV, but only when the user actually presented their finger.
- Removed magic numbers.
- Style matches existing code.
- CBOR parsing is more readable with new structs.
- Unit tests.
- Fixed all comments from the former PR.
Still missing:
- A more complete fake for testing.
- Tests for all subcommands.
- A working TockEnv implementation.
As is, the implementation is not usable on hardware.
Moves a lot of the code from the first commit around, so looking at these commits in isolation is harder than reviewing their sum.
Thanks for your pull request! It looks like this may be your first contribution to a Google open source project. Before we can look at your pull request, you'll need to sign a Contributor License Agreement (CLA).
View this failed invocation of the CLA check for more information.
For the most up to date status, view the checks section at the bottom of the pull request.
/gemini review