mirror of
https://github.com/Evolution-X/hardware_interfaces
synced 2026-02-01 11:36:00 +00:00
Merge "Revert "Delete KM1"" am: 0531c94771 am: 7e0f50f4fe am: cb8a6b42d2
Original change: https://android-review.googlesource.com/c/platform/hardware/interfaces/+/1853098 Change-Id: I2c582b4b358b8e8f13c5af8df41f0ce8a6eeb33c
This commit is contained in:
@@ -12,7 +12,7 @@ LOCAL_SRC_FILES := \
|
|||||||
|
|
||||||
LOCAL_SHARED_LIBRARIES := \
|
LOCAL_SHARED_LIBRARIES := \
|
||||||
liblog \
|
liblog \
|
||||||
libpuresoftkeymasterdevice \
|
libsoftkeymasterdevice \
|
||||||
libcrypto \
|
libcrypto \
|
||||||
libkeymaster_portable \
|
libkeymaster_portable \
|
||||||
libpuresoftkeymasterdevice \
|
libpuresoftkeymasterdevice \
|
||||||
|
|||||||
@@ -22,6 +22,7 @@
|
|||||||
#include <log/log.h>
|
#include <log/log.h>
|
||||||
|
|
||||||
#include <AndroidKeymaster3Device.h>
|
#include <AndroidKeymaster3Device.h>
|
||||||
|
#include <hardware/keymaster1.h>
|
||||||
#include <hardware/keymaster2.h>
|
#include <hardware/keymaster2.h>
|
||||||
#include <hardware/keymaster_defs.h>
|
#include <hardware/keymaster_defs.h>
|
||||||
|
|
||||||
@@ -31,6 +32,18 @@ namespace keymaster {
|
|||||||
namespace V3_0 {
|
namespace V3_0 {
|
||||||
namespace implementation {
|
namespace implementation {
|
||||||
|
|
||||||
|
static int get_keymaster1_dev(keymaster1_device_t** dev, const hw_module_t* mod) {
|
||||||
|
int rc = keymaster1_open(mod, dev);
|
||||||
|
if (rc) {
|
||||||
|
ALOGE("Error %d opening keystore keymaster1 device", rc);
|
||||||
|
if (*dev) {
|
||||||
|
(*dev)->common.close(&(*dev)->common);
|
||||||
|
*dev = nullptr;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
return rc;
|
||||||
|
}
|
||||||
|
|
||||||
static int get_keymaster2_dev(keymaster2_device_t** dev, const hw_module_t* mod) {
|
static int get_keymaster2_dev(keymaster2_device_t** dev, const hw_module_t* mod) {
|
||||||
int rc = keymaster2_open(mod, dev);
|
int rc = keymaster2_open(mod, dev);
|
||||||
if (rc) {
|
if (rc) {
|
||||||
@@ -50,8 +63,14 @@ static IKeymasterDevice* createKeymaster3Device() {
|
|||||||
return ::keymaster::ng::CreateKeymasterDevice();
|
return ::keymaster::ng::CreateKeymasterDevice();
|
||||||
}
|
}
|
||||||
|
|
||||||
if (mod->module_api_version < KEYMASTER_MODULE_API_VERSION_2_0) {
|
if (mod->module_api_version < KEYMASTER_MODULE_API_VERSION_1_0) {
|
||||||
return nullptr;
|
return nullptr;
|
||||||
|
} else if (mod->module_api_version == KEYMASTER_MODULE_API_VERSION_1_0) {
|
||||||
|
keymaster1_device_t* dev = nullptr;
|
||||||
|
if (get_keymaster1_dev(&dev, mod)) {
|
||||||
|
return nullptr;
|
||||||
|
}
|
||||||
|
return ::keymaster::ng::CreateKeymasterDevice(dev);
|
||||||
} else {
|
} else {
|
||||||
keymaster2_device_t* dev = nullptr;
|
keymaster2_device_t* dev = nullptr;
|
||||||
if (get_keymaster2_dev(&dev, mod)) {
|
if (get_keymaster2_dev(&dev, mod)) {
|
||||||
|
|||||||
@@ -36,10 +36,7 @@ cc_test {
|
|||||||
static_libs: [
|
static_libs: [
|
||||||
"android.hardware.keymaster@3.0",
|
"android.hardware.keymaster@3.0",
|
||||||
"libcrypto_static",
|
"libcrypto_static",
|
||||||
"libpuresoftkeymasterdevice",
|
"libsoftkeymasterdevice",
|
||||||
],
|
|
||||||
test_suites: [
|
|
||||||
"general-tests",
|
|
||||||
"vts",
|
|
||||||
],
|
],
|
||||||
|
test_suites: ["general-tests", "vts"],
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -32,7 +32,7 @@ cc_benchmark {
|
|||||||
static_libs: [
|
static_libs: [
|
||||||
"android.hardware.keymaster@4.0",
|
"android.hardware.keymaster@4.0",
|
||||||
"libkeymaster4support",
|
"libkeymaster4support",
|
||||||
"libpuresoftkeymasterdevice",
|
"libsoftkeymasterdevice",
|
||||||
"libchrome",
|
"libchrome"
|
||||||
],
|
],
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user