Index: chrome/browser/extensions/api/easy_unlock_private/easy_unlock_private_crypto_delegate_chromeos.cc |
diff --git a/chrome/browser/extensions/api/easy_unlock_private/easy_unlock_private_crypto_delegate_chromeos.cc b/chrome/browser/extensions/api/easy_unlock_private/easy_unlock_private_crypto_delegate_chromeos.cc |
index e1963c6b56a01a8aa13029689d6e03ecfef12d0f..6a50a6021c3b53c7ac2a84c01d02ab7c299e5150 100644 |
--- a/chrome/browser/extensions/api/easy_unlock_private/easy_unlock_private_crypto_delegate_chromeos.cc |
+++ b/chrome/browser/extensions/api/easy_unlock_private/easy_unlock_private_crypto_delegate_chromeos.cc |
@@ -56,8 +56,8 @@ class EasyUnlockPrivateCryptoDelegateChromeOS |
const easy_unlock_private::PerformECDHKeyAgreement::Params& params, |
const DataCallback& callback) override { |
dbus_client_->PerformECDHKeyAgreement( |
- params.private_key, |
- params.public_key, |
+ std::string(params.private_key.begin(), params.private_key.end()), |
+ std::string(params.public_key.begin(), params.public_key.end()), |
callback); |
} |
@@ -65,36 +65,52 @@ class EasyUnlockPrivateCryptoDelegateChromeOS |
const easy_unlock_private::CreateSecureMessage::Params& params, |
const DataCallback& callback) override { |
chromeos::EasyUnlockClient::CreateSecureMessageOptions options; |
- options.key = params.key; |
- if (params.options.associated_data) |
- options.associated_data = *params.options.associated_data; |
- if (params.options.public_metadata) |
- options.public_metadata = *params.options.public_metadata; |
- if (params.options.verification_key_id) |
- options.verification_key_id = *params.options.verification_key_id; |
- if (params.options.decryption_key_id) |
- options.decryption_key_id = *params.options.decryption_key_id; |
+ options.key.assign(params.key.begin(), params.key.end()); |
+ if (params.options.associated_data) { |
+ options.associated_data.assign(params.options.associated_data->begin(), |
+ params.options.associated_data->end()); |
+ } |
+ if (params.options.public_metadata) { |
+ options.public_metadata.assign(params.options.public_metadata->begin(), |
+ params.options.public_metadata->end()); |
+ } |
+ if (params.options.verification_key_id) { |
+ options.verification_key_id.assign( |
+ params.options.verification_key_id->begin(), |
+ params.options.verification_key_id->end()); |
+ } |
+ if (params.options.decryption_key_id) { |
+ options.decryption_key_id.assign( |
+ params.options.decryption_key_id->begin(), |
+ params.options.decryption_key_id->end()); |
+ } |
options.encryption_type = |
EncryptionTypeToString(params.options.encrypt_type); |
options.signature_type = |
SignatureTypeToString(params.options.sign_type); |
- dbus_client_->CreateSecureMessage(params.payload, options, callback); |
+ dbus_client_->CreateSecureMessage( |
+ std::string(params.payload.begin(), params.payload.end()), options, |
+ callback); |
} |
void UnwrapSecureMessage( |
const easy_unlock_private::UnwrapSecureMessage::Params& params, |
const DataCallback& callback) override { |
chromeos::EasyUnlockClient::UnwrapSecureMessageOptions options; |
- options.key = params.key; |
- if (params.options.associated_data) |
- options.associated_data = *params.options.associated_data; |
+ options.key.assign(params.key.begin(), params.key.end()); |
+ if (params.options.associated_data) { |
+ options.associated_data.assign(params.options.associated_data->begin(), |
+ params.options.associated_data->end()); |
+ } |
options.encryption_type = |
EncryptionTypeToString(params.options.encrypt_type); |
options.signature_type = |
SignatureTypeToString(params.options.sign_type); |
- dbus_client_->UnwrapSecureMessage(params.secure_message, options, callback); |
+ dbus_client_->UnwrapSecureMessage( |
+ std::string(params.secure_message.begin(), params.secure_message.end()), |
+ options, callback); |
} |
private: |