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 { ...@@ -272,6 +272,10 @@ bool ChromeOSAuthenticator::RequiresBlePairingPin() const {
return false; return false;
} }
bool ChromeOSAuthenticator::IsChromeOSAuthenticator() const {
return true;
}
base::WeakPtr<FidoAuthenticator> ChromeOSAuthenticator::GetWeakPtr() { base::WeakPtr<FidoAuthenticator> ChromeOSAuthenticator::GetWeakPtr() {
return weak_factory_.GetWeakPtr(); return weak_factory_.GetWeakPtr();
} }
......
...@@ -46,6 +46,8 @@ class COMPONENT_EXPORT(DEVICE_FIDO) ChromeOSAuthenticator ...@@ -46,6 +46,8 @@ class COMPONENT_EXPORT(DEVICE_FIDO) ChromeOSAuthenticator
bool IsPaired() const override; bool IsPaired() const override;
bool RequiresBlePairingPin() const override; bool RequiresBlePairingPin() const override;
bool IsChromeOSAuthenticator() const override;
void GetTouch(base::OnceClosure callback) override {} void GetTouch(base::OnceClosure callback) override {}
base::WeakPtr<FidoAuthenticator> GetWeakPtr() override; base::WeakPtr<FidoAuthenticator> GetWeakPtr() override;
......
...@@ -230,6 +230,9 @@ class COMPONENT_EXPORT(DEVICE_FIDO) FidoAuthenticator { ...@@ -230,6 +230,9 @@ class COMPONENT_EXPORT(DEVICE_FIDO) FidoAuthenticator {
#if defined(OS_MAC) #if defined(OS_MAC)
virtual bool IsTouchIdAuthenticator() const = 0; virtual bool IsTouchIdAuthenticator() const = 0;
#endif // defined(OS_MAC) #endif // defined(OS_MAC)
#if defined(OS_CHROMEOS)
virtual bool IsChromeOSAuthenticator() const = 0;
#endif
virtual base::WeakPtr<FidoAuthenticator> GetWeakPtr() = 0; virtual base::WeakPtr<FidoAuthenticator> GetWeakPtr() = 0;
private: private:
......
...@@ -827,6 +827,12 @@ bool FidoDeviceAuthenticator::IsTouchIdAuthenticator() const { ...@@ -827,6 +827,12 @@ bool FidoDeviceAuthenticator::IsTouchIdAuthenticator() const {
} }
#endif // defined(OS_MAC) #endif // defined(OS_MAC)
#if defined(OS_CHROMEOS)
bool FidoDeviceAuthenticator::IsChromeOSAuthenticator() const {
return false;
}
#endif // defined(OS_CHROMEOS)
void FidoDeviceAuthenticator::SetTaskForTesting( void FidoDeviceAuthenticator::SetTaskForTesting(
std::unique_ptr<FidoTask> task) { std::unique_ptr<FidoTask> task) {
task_ = std::move(task); task_ = std::move(task);
......
...@@ -113,6 +113,9 @@ class COMPONENT_EXPORT(DEVICE_FIDO) FidoDeviceAuthenticator ...@@ -113,6 +113,9 @@ class COMPONENT_EXPORT(DEVICE_FIDO) FidoDeviceAuthenticator
#if defined(OS_MAC) #if defined(OS_MAC)
bool IsTouchIdAuthenticator() const override; bool IsTouchIdAuthenticator() const override;
#endif // defined(OS_MAC) #endif // defined(OS_MAC)
#if defined(OS_CHROMEOS)
bool IsChromeOSAuthenticator() const override;
#endif // defined(OS_CHROMEOS)
base::WeakPtr<FidoAuthenticator> GetWeakPtr() override; base::WeakPtr<FidoAuthenticator> GetWeakPtr() override;
FidoDevice* device() { return device_.get(); } 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