IFingerprint: update default implementation

Bug: 166800618
Test: atest VtsHalBiometricsFingerprintTargetTest
Change-Id: I0ac3a019081f4f5db6943fc019165ad1aa2e0bc8
This commit is contained in:
Ilya Matyukhin
2021-07-02 20:33:51 +00:00
parent 53bd75df19
commit 1d52438592

View File

@@ -17,14 +17,19 @@
#pragma once
#include <android-base/logging.h>
#include <random>
namespace aidl::android::hardware::biometrics::fingerprint {
class FakeFingerprintEngine {
public:
FakeFingerprintEngine() : mRandom(std::mt19937::default_seed) {}
void generateChallengeImpl(ISessionCallback* cb) {
LOG(INFO) << "generateChallengeImpl";
cb->onChallengeGenerated(0 /* challenge */);
std::uniform_int_distribution<int64_t> dist;
auto challenge = dist(mRandom);
cb->onChallengeGenerated(challenge);
}
void revokeChallengeImpl(ISessionCallback* cb, int64_t challenge) {
@@ -32,8 +37,13 @@ class FakeFingerprintEngine {
cb->onChallengeRevoked(challenge);
}
void enrollImpl(ISessionCallback* cb, const keymaster::HardwareAuthToken& /*hat*/) {
void enrollImpl(ISessionCallback* cb, const keymaster::HardwareAuthToken& hat) {
LOG(INFO) << "enrollImpl";
// Do proper HAT verification in the real implementation.
if (hat.mac.empty()) {
cb->onError(Error::UNABLE_TO_PROCESS, 0 /* vendorError */);
return;
}
cb->onEnrollmentProgress(0 /* enrollmentId */, 0 /* remaining */);
}
@@ -71,6 +81,8 @@ class FakeFingerprintEngine {
LOG(INFO) << "resetLockoutImpl";
cb->onLockoutCleared();
}
std::mt19937 mRandom;
};
} // namespace aidl::android::hardware::biometrics::fingerprint