diff options
author | Shawn Willden <swillden@google.com> | 2016-01-27 12:59:13 -0700 |
---|---|---|
committer | Shawn Willden <swillden@google.com> | 2016-01-28 16:24:17 -0700 |
commit | cb647fec03f71929fd316d2b8f0750f7b24824f3 (patch) | |
tree | 54b208b5c2de82c6ed5b722fdeac91a22dc675b1 /ecdsa_keymaster1_operation.h | |
parent | 4ed2d7ed2275735ddc4952f310badfa4dcbaf04e (diff) | |
download | keymaster-cb647fec03f71929fd316d2b8f0750f7b24824f3.tar.gz |
Support input to "finish()" in AndroidKeymaster operations.
This CL does not yet take advantage of the simplifications that allowing
input to finish() provides. That will require updating the Java layer
first, to remove some assumptions and code that assume update() must
eventually consume all input.
Change-Id: Ie85896027a1d55ddec06750d19addbb1f5e462c8
Diffstat (limited to 'ecdsa_keymaster1_operation.h')
-rw-r--r-- | ecdsa_keymaster1_operation.h | 7 |
1 files changed, 4 insertions, 3 deletions
diff --git a/ecdsa_keymaster1_operation.h b/ecdsa_keymaster1_operation.h index 7530fbb..6045686 100644 --- a/ecdsa_keymaster1_operation.h +++ b/ecdsa_keymaster1_operation.h @@ -69,12 +69,13 @@ template <typename BaseOperation> class EcdsaKeymaster1Operation : public BaseOp return super::Begin(input_params, output_params); } - keymaster_error_t Finish(const AuthorizationSet& input_params, const Buffer& signature, - AuthorizationSet* output_params, Buffer* output) override { + keymaster_error_t Finish(const AuthorizationSet& input_params, const Buffer& input, + const Buffer& signature, AuthorizationSet* output_params, + Buffer* output) override { keymaster_error_t error = wrapped_operation_.PrepareFinish(super::ecdsa_key_, input_params); if (error != KM_ERROR_OK) return error; - error = super::Finish(input_params, signature, output_params, output); + error = super::Finish(input_params, input, signature, output_params, output); if (wrapped_operation_.GetError(super::ecdsa_key_) != KM_ERROR_OK) error = wrapped_operation_.GetError(super::ecdsa_key_); if (error == KM_ERROR_OK) |