* Respect `CARGO_TARGET_DIR` env var
This change resolves `CARGO_TARGET_DIR` when set instead of hardcoding
Cargos `target/` dir.
* Fix pylint offenses
* Simplify env query
* Fix yapf offenses
* removes read_partition and partition_length from upgrade API
* renames partition to bundle, also data type change from slice to Vec
* removes hash from Env API
* fixes comment
* new metadata format is used
* Update bootloader/src/main.rs
Co-authored-by: ztoked <zhalvorsen@google.com>
* splits the metadata signed and unsigned parts evenly
* fixes pylint
Co-authored-by: ztoked <zhalvorsen@google.com>
* maximum working bumpalo version
* explicit comment to explain version locking
* removes incorrect comment
* moves serde version lock to dev dependencies
* removes serde dependencies
* reverts serde removal in crypto library
* Support credBlob for non-resident credentials
- Add a upper limit of max_cred_blob_length
- Add test cases for cred_blob in non-resident flows
- Modify the test helper functions in ctap/mod.rs a bit
* Fix some styles in credential_id.rs
Co-authored-by: kaczmarczyck <43844792+kaczmarczyck@users.noreply.github.com>
* Duplicate the credential management command as a vendor command
This permits to work with libfido2 and thus ssh-add. Fix#526.
* fix deploy_partition script
* Support configure via the Vendor interface
* Adjust tests now that GetInfo is supported on vendor_hid
* Add test for vendor_hid not supporting FIDO command
* Interleave sending and receiving of packets to reduce latency in receiving of packets
* Add patch to CtapUsbSyscallDriver
* Minor tweaks from review
* Log when overwritting an existing reply
* Only log when 'debug_ctap' is enabled
* Make ctap mod public, as per review
* Rename send_or_recv to send_and_maybe_recv
* fix typo
* Don't process packets on other transport while doing keepalive
* Don't process packets on other transport while doing keepalive
* More accurately determine if reply has finished
* Move comment closer to appropriate location
* Add tests for canceling keepalive packets
* Added a TODO for kaczmarczyck re ctap module being public
* remove the unnecessary sleep()s
* undo messed up commit
* address pylint warnings
* Fix merge mess up, and patch fido2 Usage Page
* Fix up completely borked merge
* Remove patch to FIDO usage, after #523.
* remove obsolete aspects to diff
Co-authored-by: kaczmarczyck <43844792+kaczmarczyck@users.noreply.github.com>
* Fix user presence by not overwriting error with OK()
* revert debugging change to TOUCH_TIMEOUT_MS
* fix up incomplete merge
* rename variable to more understandable name
* Add tests to test user_presence
* Round-robin order for receiving packets
* Update next packet after sending packet
* fix up some formatted raised during review
* remove the whitespace noise from last commit
* Move out check credProtectPolicy logic
Move the credProtectPolicy check outside credential ID decryption &
discoverable credential finding. Modify the unit tests, and add unit
tests for credProtectPolicy checking in non resident flows that were
originally missing.
* Add test script to verify Vendor HID interface
* fix formatting
* fix formatting
* fix formatting
* fix formatting
* duplicate tests to test both interfaces first and second
* simplifiy using unique byte val
* more tests
* fix up tings from review
* reset rx packets after reading.
* fix formatting.
* Add CBOR credential ID type
Update the format of the credential ID we generated to extend the
encrypted portion from only private_key + rp_id_hash to a flexible CBOR
map. This way we can persist more data into the key handle in the future
without need of a new version.
We add credProtectPolicy to the persisted data in this commit too, so we
can correctly check the credProtectPolicy for non-discoverable
credentials in follow-up commits.
* Fixed some style problems.
* Fix cargo clippy warning
* Check credProtectPolicy for non-discoverable credentials.
* Remove support of old v1, v2 key handles
- And changed some style problems
* Style changes
* Add missing `alloc` use