Commit Graph

422 Commits

Author SHA1 Message Date
John M. Schanck fa02ffe1bd Factor FidoDeviceIO trait out of FidoDevice
This allows us to provide transport-specific default implementations of
`send_msg_cancellable`. The previous approach exposed some HID-specific
abstractions through the abstract FidoDevice trait.
2023-06-12 14:40:04 -07:00
John M. Schanck 10d27db357 Add FidoDevice::get_protocol and downgrade_to_ctap1 2023-06-08 09:18:16 -07:00
Martin Sirringhaus 897f15a40b Fix #274: Select a reasonable default pin protocol when pinUvAuthProtocols is absent from GetInfo response 2023-06-07 16:02:58 -07:00
John M. Schanck c19a3ea625 Move get/set_device_info to HIDDevice and remove U2FDeviceInfo status updates 2023-06-02 10:39:09 -07:00
John M. Schanck b444f325d9 Allow long CTAPHID_INIT responses 2023-06-01 14:51:31 -07:00
John M. Schanck 9f1b3acdbb Merge branch 'msirringhaus-drop_nom' into ctap2-2021 2023-06-01 12:26:47 -07:00
John M. Schanck 5d0ae37b24 Decouple the abstract FidoDevice trait from HIDDevice and U2FDevice 2023-06-01 12:10:40 -07:00
Martin Sirringhaus 09acd61b40 Remove nom 2023-06-01 09:40:29 +02:00
John M. Schanck 3df0a9990d Move protocol logic out of StateMachine 2023-05-31 08:55:47 -07:00
Zhao Jiazhong e0ff05139f Add LoongArch64 support 2023-05-30 21:35:25 -07:00
John M. Schanck c2ee0f7b71 Export AuthenticatorService::add_transport 2023-05-26 12:42:51 -07:00
John M. Schanck fadb66b63f Bump version to 0.4.0-alpha.15 2023-05-15 12:03:02 -07:00
John M. Schanck 2da9e9912e Don't assume CTAP2 support based on CBOR capability
The CBOR capability flag isn't a reliable indicator of CTAP2 support, as
some CTAP1-only authenticators mistakenly set reserved capability flags.
With this patch, we assume we're talking to a CTAP1 authenticator until
we succeed in an authenticatorGetInfo query.
2023-05-15 12:01:11 -07:00
John M. Schanck 1aaf0540ff Add StatusUpdate::PresenceRequired 2023-05-15 11:59:31 -07:00
John M. Schanck e5e9fdc86d Avoid dropping reserved / unknown authenticator data flags 2023-05-12 09:33:02 -07:00
John M. Schanck e6f7f1c7e1 Add missing use declarations 2023-05-11 09:38:13 -07:00
Martin Sirringhaus f09873fa07 Adressing feedback 2023-05-11 09:31:14 -07:00
Martin Sirringhaus e7f2c3d134 Add new EmptyAllowList-error to test-binary for ctap1-case 2023-05-11 09:31:13 -07:00
Martin Sirringhaus e93777a240 Add additional filtering step, if the device specifies a max. key-id lenght 2023-05-11 09:30:53 -07:00
Martin Sirringhaus af40f854f7 Fix clippy warnings 2023-05-11 09:30:53 -07:00
Martin Sirringhaus a5ed5346a7 Add GetAssertion pre-flight test for CTAP2 2023-05-11 09:30:53 -07:00
Martin Sirringhaus 82034738a2 Fix GetAssertion-tests 2023-05-11 09:30:53 -07:00
Martin Sirringhaus f9fbf12662 Deduplicate CTAP1 pre-flight code 2023-05-11 09:30:53 -07:00
Martin Sirringhaus 994e4aa7ff Implement pre-flight for CTAP2 2023-05-11 09:30:51 -07:00
Martin Sirringhaus cf40fadc62 Move pre-flight of CTAP1 to its own file 2023-05-11 09:30:22 -07:00