diff options
author | Android Build Coastguard Worker <android-build-coastguard-worker@google.com> | 2022-07-09 03:29:48 +0000 |
---|---|---|
committer | Android Build Coastguard Worker <android-build-coastguard-worker@google.com> | 2022-07-09 03:29:48 +0000 |
commit | 6a1581fdd45bfb9416bcaf193bd7dca91277b75e (patch) | |
tree | c74bc647ea77f96ba2bf7e7d9e40df869604302d | |
parent | 92a5b7c1b8360c61c87e5140a3a540e4e8f48ee8 (diff) | |
parent | 3fc6c4ba987c442afd7bafe63b1736ed55f748e1 (diff) | |
download | keymaster-6a1581fdd45bfb9416bcaf193bd7dca91277b75e.tar.gz |
Snap for 8813441 from 3fc6c4ba987c442afd7bafe63b1736ed55f748e1 to tm-qpr1-release
Change-Id: I014b2889f078be49dc4c59e8b622ab9beaf9f533
-rw-r--r-- | ng/AndroidKeyMintOperation.cpp | 21 |
1 files changed, 18 insertions, 3 deletions
diff --git a/ng/AndroidKeyMintOperation.cpp b/ng/AndroidKeyMintOperation.cpp index 17f6b33..b886bd7 100644 --- a/ng/AndroidKeyMintOperation.cpp +++ b/ng/AndroidKeyMintOperation.cpp @@ -50,11 +50,16 @@ AndroidKeyMintOperation::~AndroidKeyMintOperation() { ScopedAStatus AndroidKeyMintOperation::updateAad(const vector<uint8_t>& input, - const optional<HardwareAuthToken>& /* authToken */, + const optional<HardwareAuthToken>& authToken, const optional<TimeStampToken>& /* timestampToken */) { UpdateOperationRequest request(impl_->message_version()); request.op_handle = opHandle_; request.additional_params.push_back(TAG_ASSOCIATED_DATA, input.data(), input.size()); + if (authToken) { + auto tokenAsVec(authToken2AidlVec(*authToken)); + request.additional_params.push_back(keymaster::TAG_AUTH_TOKEN, tokenAsVec.data(), + tokenAsVec.size()); + } UpdateOperationResponse response(impl_->message_version()); impl_->UpdateOperation(request, &response); @@ -63,7 +68,7 @@ AndroidKeyMintOperation::updateAad(const vector<uint8_t>& input, } ScopedAStatus AndroidKeyMintOperation::update(const vector<uint8_t>& input, - const optional<HardwareAuthToken>& /* authToken */, + const optional<HardwareAuthToken>& authToken, const optional<TimeStampToken>& /* timestampToken */, vector<uint8_t>* output) { @@ -72,6 +77,11 @@ ScopedAStatus AndroidKeyMintOperation::update(const vector<uint8_t>& input, UpdateOperationRequest request(impl_->message_version()); request.op_handle = opHandle_; request.input.Reinitialize(input.data(), input.size()); + if (authToken) { + auto tokenAsVec(authToken2AidlVec(*authToken)); + request.additional_params.push_back(keymaster::TAG_AUTH_TOKEN, tokenAsVec.data(), + tokenAsVec.size()); + } UpdateOperationResponse response(impl_->message_version()); impl_->UpdateOperation(request, &response); @@ -88,7 +98,7 @@ ScopedAStatus AndroidKeyMintOperation::update(const vector<uint8_t>& input, ScopedAStatus AndroidKeyMintOperation::finish(const optional<vector<uint8_t>>& input, // const optional<vector<uint8_t>>& signature, // - const optional<HardwareAuthToken>& /* authToken */, + const optional<HardwareAuthToken>& authToken, const optional<TimeStampToken>& /* timestampToken */, const optional<vector<uint8_t>>& /* confirmationToken */, vector<uint8_t>* output) { @@ -102,6 +112,11 @@ AndroidKeyMintOperation::finish(const optional<vector<uint8_t>>& input, // request.op_handle = opHandle_; if (input) request.input.Reinitialize(input->data(), input->size()); if (signature) request.signature.Reinitialize(signature->data(), signature->size()); + if (authToken) { + auto tokenAsVec(authToken2AidlVec(*authToken)); + request.additional_params.push_back(keymaster::TAG_AUTH_TOKEN, tokenAsVec.data(), + tokenAsVec.size()); + } FinishOperationResponse response(impl_->message_version()); impl_->FinishOperation(request, &response); |