summaryrefslogtreecommitdiffstats
path: root/trusty
diff options
context:
space:
mode:
authorJocelyn Bohr <bohr@google.com>2017-02-09 17:13:17 -0800
committerJocelyn Bohr <bohr@google.com>2017-04-10 17:19:49 -0700
commit126402aae76f54fcf53f21d1f16a1ed158683544 (patch)
tree0018613daa607c920bf3e469c8c3c80a05452d52 /trusty
parentdccc76cd0b1fe3de2c4d3f1b61feb45759f76873 (diff)
downloadsystem_core-126402aae76f54fcf53f21d1f16a1ed158683544.tar.gz
system_core-126402aae76f54fcf53f21d1f16a1ed158683544.tar.bz2
system_core-126402aae76f54fcf53f21d1f16a1ed158683544.zip
trusty: keymaster: Implement add_rng_entropy
Test: builds Change-Id: Iec5f61777f9b39136028d61acaf724b9fafb4492
Diffstat (limited to 'trusty')
-rw-r--r--trusty/keymaster/trusty_keymaster_device.cpp10
1 files changed, 9 insertions, 1 deletions
diff --git a/trusty/keymaster/trusty_keymaster_device.cpp b/trusty/keymaster/trusty_keymaster_device.cpp
index 5bc879cb8..c1c43f544 100644
--- a/trusty/keymaster/trusty_keymaster_device.cpp
+++ b/trusty/keymaster/trusty_keymaster_device.cpp
@@ -165,7 +165,15 @@ keymaster_error_t TrustyKeymasterDevice::configure(const keymaster_key_param_set
keymaster_error_t TrustyKeymasterDevice::add_rng_entropy(const uint8_t* data, size_t data_length) {
ALOGD("Device received add_rng_entropy");
- return KM_ERROR_OK;
+
+ if (error_ != KM_ERROR_OK) {
+ return error_;
+ }
+
+ AddEntropyRequest request;
+ request.random_data.Reinitialize(data, data_length);
+ AddEntropyResponse response;
+ return Send(KM_ADD_RNG_ENTROPY, request, &response);
}
keymaster_error_t TrustyKeymasterDevice::generate_key(