Commit a30a0f05 authored by Yicheng Li's avatar Yicheng Li Committed by Commit Bot

device/fido: Add authenticator API to identify ChromeOSAuthenticator

Similar to IsWinNativeApiAuthenticator() and IsTouchIdAuthenticator(),
add IsChromeOSAuthenticator() which is only compiled on ChromeOS.

Bug: crbug:1115811, b:144861739
Change-Id: I80b88392e1c9edf501709ced7709db889370774b
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/2357954
Commit-Queue: Yicheng Li <yichengli@chromium.org>
Commit-Queue: Martin Kreichgauer <martinkr@google.com>
Reviewed-by: default avatarMartin Kreichgauer <martinkr@google.com>
Cr-Commit-Position: refs/heads/master@{#798346}
parent 70bd16c7
......@@ -272,6 +272,10 @@ bool ChromeOSAuthenticator::RequiresBlePairingPin() const {
return false;
}
bool ChromeOSAuthenticator::IsChromeOSAuthenticator() const {
return true;
}
base::WeakPtr<FidoAuthenticator> ChromeOSAuthenticator::GetWeakPtr() {
return weak_factory_.GetWeakPtr();
}
......
......@@ -46,6 +46,8 @@ class COMPONENT_EXPORT(DEVICE_FIDO) ChromeOSAuthenticator
bool IsPaired() const override;
bool RequiresBlePairingPin() const override;
bool IsChromeOSAuthenticator() const override;
void GetTouch(base::OnceClosure callback) override {}
base::WeakPtr<FidoAuthenticator> GetWeakPtr() override;
......
......@@ -230,6 +230,9 @@ class COMPONENT_EXPORT(DEVICE_FIDO) FidoAuthenticator {
#if defined(OS_MAC)
virtual bool IsTouchIdAuthenticator() const = 0;
#endif // defined(OS_MAC)
#if defined(OS_CHROMEOS)
virtual bool IsChromeOSAuthenticator() const = 0;
#endif
virtual base::WeakPtr<FidoAuthenticator> GetWeakPtr() = 0;
private:
......
......@@ -827,6 +827,12 @@ bool FidoDeviceAuthenticator::IsTouchIdAuthenticator() const {
}
#endif // defined(OS_MAC)
#if defined(OS_CHROMEOS)
bool FidoDeviceAuthenticator::IsChromeOSAuthenticator() const {
return false;
}
#endif // defined(OS_CHROMEOS)
void FidoDeviceAuthenticator::SetTaskForTesting(
std::unique_ptr<FidoTask> task) {
task_ = std::move(task);
......
......@@ -113,6 +113,9 @@ class COMPONENT_EXPORT(DEVICE_FIDO) FidoDeviceAuthenticator
#if defined(OS_MAC)
bool IsTouchIdAuthenticator() const override;
#endif // defined(OS_MAC)
#if defined(OS_CHROMEOS)
bool IsChromeOSAuthenticator() const override;
#endif // defined(OS_CHROMEOS)
base::WeakPtr<FidoAuthenticator> GetWeakPtr() override;
FidoDevice* device() { return device_.get(); }
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment