#include "device/fido/credential_management_handler.h"
#include <utility>
#include "base/check_op.h"
#include "base/functional/bind.h"
#include "base/notreached.h"
#include "device/fido/fido_authenticator.h"
#include "device/fido/fido_constants.h"
#include "device/fido/pin.h"
#include "device/fido/public_key_credential_descriptor.h"
namespace device {
CredentialManagementHandler::CredentialManagementHandler(
FidoDiscoveryFactory* fido_discovery_factory,
const base::flat_set<FidoTransportProtocol>& supported_transports,
ReadyCallback ready_callback,
GetPINCallback get_pin_callback,
FinishedCallback finished_callback)
: … { … }
CredentialManagementHandler::~CredentialManagementHandler() { … }
void CredentialManagementHandler::DispatchRequest(
FidoAuthenticator* authenticator) { … }
void CredentialManagementHandler::OnTouch(FidoAuthenticator* authenticator) { … }
void CredentialManagementHandler::OnRetriesResponse(
CtapDeviceResponseCode status,
std::optional<pin::RetriesResponse> response) { … }
void CredentialManagementHandler::OnHavePIN(std::string pin) { … }
void CredentialManagementHandler::OnHavePINToken(
CtapDeviceResponseCode status,
std::optional<pin::TokenResponse> response) { … }
void CredentialManagementHandler::OnInitFinished(
CtapDeviceResponseCode status) { … }
void CredentialManagementHandler::GetCredentials(
GetCredentialsCallback callback) { … }
void CredentialManagementHandler::OnDeleteCredentials(
std::vector<device::PublicKeyCredentialDescriptor> remaining_credential_ids,
CredentialManagementHandler::DeleteCredentialCallback callback,
CtapDeviceResponseCode status,
std::optional<DeleteCredentialResponse> response) { … }
void CredentialManagementHandler::DeleteCredentials(
std::vector<device::PublicKeyCredentialDescriptor> credential_ids,
DeleteCredentialCallback callback) { … }
static void OnUpdateUserInformation(
CredentialManagementHandler::UpdateUserInformationCallback callback,
CtapDeviceResponseCode status,
std::optional<UpdateUserInformationResponse> response) { … }
void CredentialManagementHandler::UpdateUserInformation(
const PublicKeyCredentialDescriptor& credential_id,
const PublicKeyCredentialUserEntity& updated_user,
UpdateUserInformationCallback callback) { … }
void CredentialManagementHandler::OnCredentialsMetadata(
CtapDeviceResponseCode status,
std::optional<CredentialsMetadataResponse> response) { … }
void CredentialManagementHandler::OnEnumerateCredentials(
CredentialsMetadataResponse metadata_response,
CtapDeviceResponseCode status,
std::optional<std::vector<AggregatedEnumerateCredentialsResponse>>
responses) { … }
void CredentialManagementHandler::AuthenticatorRemoved(
FidoDiscoveryBase* discovery,
FidoAuthenticator* authenticator) { … }
}