Add abstract wrapper around IKeymasterDevice.
The "Keymaster" class provides an abstraction that hides the
underlying implementation. It will always inherit the current
IKeymasterDevice version and extend it with additional pure virtual methods
that are used by keystore to query for meta information. This class
will in turn have subclasses which will wrap an instance of each
different version of IKeymasterDevice that we support.
Test: CTS
Change-Id: I62420dc0a8c196bb3f19753a8f304d46a75fae0e
diff --git a/keystore/Android.bp b/keystore/Android.bp
index ef8bc72..42301f2 100644
--- a/keystore/Android.bp
+++ b/keystore/Android.bp
@@ -22,6 +22,7 @@
srcs: [
":IKeyAttestationApplicationIdProvider.aidl",
"KeyStore.cpp",
+ "Keymaster3.cpp",
"auth_token_table.cpp",
"blob.cpp",
"entropy.cpp",
@@ -40,6 +41,7 @@
shared_libs: [
"android.hardware.keymaster@3.0",
"android.system.wifi.keystore@1.0",
+ "libbase",
"libbinder",
"libcrypto",
"libcutils",