//device/fido: add FidoAuthenticator interface
This adds the FidoAuthenticator interface, which defines the basic
methods from the WebAuthn authenticator model (MakeCredential and
GetAssertion).
FidoRequestHandler is changed to hold a map of FidoAuthenticator
instances, rather than a map of FidoTasks. FidoTask and FidoDevice are
moved behind a concrete FidoAuthenticator subclass called
FidoDeviceAuthenticator (but remain unchanged otherwise). This allows
for FidoAuthenticators that are backed by platform APIs rather than a
detachable physical device.
This is a purely structural change. No functional changes intended.
Change-Id: Id158db5801ac4556066a1a88136d7a720b137e1b
Reviewed-on: https://chromium-review.googlesource.com/1045892
Commit-Queue: Jan Wilken Dörrie <[email protected]>
Reviewed-by: Jan Wilken Dörrie <[email protected]>
Cr-Commit-Position: refs/heads/master@{#557311}
diff --git a/device/fido/get_assertion_request_handler.h b/device/fido/get_assertion_request_handler.h
index 8168bde..4f318334 100644
--- a/device/fido/get_assertion_request_handler.h
+++ b/device/fido/get_assertion_request_handler.h
@@ -22,8 +22,7 @@
namespace device {
-class FidoDevice;
-class FidoTask;
+class FidoAuthenticator;
class AuthenticatorGetAssertionResponse;
using SignResponseCallback =
@@ -42,7 +41,7 @@
private:
// FidoRequestHandlerBase:
- std::unique_ptr<FidoTask> CreateTaskForNewDevice(FidoDevice* device) override;
+ void DispatchRequest(FidoAuthenticator* authenticator) override;
CtapGetAssertionRequest request_;
base::WeakPtrFactory<GetAssertionRequestHandler> weak_factory_;