| Index: chromeos/dbus/cryptohome_client.cc
|
| diff --git a/chromeos/dbus/cryptohome_client.cc b/chromeos/dbus/cryptohome_client.cc
|
| index e816b91052eb0e67521d6a6039d92505b6344a07..04c340c88cf89ad4e5d31db8b9526c2c07516622 100644
|
| --- a/chromeos/dbus/cryptohome_client.cc
|
| +++ b/chromeos/dbus/cryptohome_client.cc
|
| @@ -12,6 +12,7 @@
|
| #include "chromeos/dbus/blocking_method_caller.h"
|
| #include "chromeos/dbus/cryptohome/key.pb.h"
|
| #include "chromeos/dbus/cryptohome/rpc.pb.h"
|
| +#include "components/user_manager/user_id.h"
|
| #include "dbus/bus.h"
|
| #include "dbus/message.h"
|
| #include "dbus/object_path.h"
|
| @@ -73,13 +74,13 @@ class CryptohomeClientImpl : public CryptohomeClient {
|
| }
|
|
|
| // CryptohomeClient override.
|
| - void AsyncCheckKey(const std::string& username,
|
| + void AsyncCheckKey(const user_manager::UserID& user_id,
|
| const std::string& key,
|
| const AsyncMethodCallback& callback) override {
|
| dbus::MethodCall method_call(cryptohome::kCryptohomeInterface,
|
| cryptohome::kCryptohomeAsyncCheckKey);
|
| dbus::MessageWriter writer(&method_call);
|
| - writer.AppendString(username);
|
| + writer.AppendString(user_id.GetUserEmail());
|
| writer.AppendString(key);
|
| proxy_->CallMethod(&method_call, kTpmDBusTimeoutMs ,
|
| base::Bind(&CryptohomeClientImpl::OnAsyncMethodCall,
|
| @@ -88,14 +89,14 @@ class CryptohomeClientImpl : public CryptohomeClient {
|
| }
|
|
|
| // CryptohomeClient override.
|
| - void AsyncMigrateKey(const std::string& username,
|
| + void AsyncMigrateKey(const user_manager::UserID& user_id,
|
| const std::string& from_key,
|
| const std::string& to_key,
|
| const AsyncMethodCallback& callback) override {
|
| dbus::MethodCall method_call(cryptohome::kCryptohomeInterface,
|
| cryptohome::kCryptohomeAsyncMigrateKey);
|
| dbus::MessageWriter writer(&method_call);
|
| - writer.AppendString(username);
|
| + writer.AppendString(user_id.GetUserEmail());
|
| writer.AppendString(from_key);
|
| writer.AppendString(to_key);
|
| proxy_->CallMethod(&method_call, kTpmDBusTimeoutMs ,
|
| @@ -105,12 +106,12 @@ class CryptohomeClientImpl : public CryptohomeClient {
|
| }
|
|
|
| // CryptohomeClient override.
|
| - void AsyncRemove(const std::string& username,
|
| + void AsyncRemove(const user_manager::UserID& user_id,
|
| const AsyncMethodCallback& callback) override {
|
| dbus::MethodCall method_call(cryptohome::kCryptohomeInterface,
|
| cryptohome::kCryptohomeAsyncRemove);
|
| dbus::MessageWriter writer(&method_call);
|
| - writer.AppendString(username);
|
| + writer.AppendString(user_id.GetUserEmail());
|
| proxy_->CallMethod(&method_call, kTpmDBusTimeoutMs ,
|
| base::Bind(&CryptohomeClientImpl::OnAsyncMethodCall,
|
| weak_ptr_factory_.GetWeakPtr(),
|
| @@ -128,12 +129,12 @@ class CryptohomeClientImpl : public CryptohomeClient {
|
| }
|
|
|
| // CryptohomeClient override,
|
| - void GetSanitizedUsername(const std::string& username,
|
| + void GetSanitizedUsername(const user_manager::UserID& user_id,
|
| const StringDBusMethodCallback& callback) override {
|
| dbus::MethodCall method_call(cryptohome::kCryptohomeInterface,
|
| cryptohome::kCryptohomeGetSanitizedUsername);
|
| dbus::MessageWriter writer(&method_call);
|
| - writer.AppendString(username);
|
| + writer.AppendString(user_id.GetUserEmail());
|
| proxy_->CallMethod(&method_call, kTpmDBusTimeoutMs ,
|
| base::Bind(&CryptohomeClientImpl::OnStringMethod,
|
| weak_ptr_factory_.GetWeakPtr(),
|
| @@ -142,11 +143,11 @@ class CryptohomeClientImpl : public CryptohomeClient {
|
|
|
| // CryptohomeClient override.
|
| std::string BlockingGetSanitizedUsername(
|
| - const std::string& username) override {
|
| + const user_manager::UserID& user_id) override {
|
| dbus::MethodCall method_call(cryptohome::kCryptohomeInterface,
|
| cryptohome::kCryptohomeGetSanitizedUsername);
|
| dbus::MessageWriter writer(&method_call);
|
| - writer.AppendString(username);
|
| + writer.AppendString(user_id.GetUserEmail());
|
|
|
| scoped_ptr<dbus::Response> response =
|
| blocking_method_caller_->CallMethodAndBlock(&method_call);
|
| @@ -161,14 +162,14 @@ class CryptohomeClientImpl : public CryptohomeClient {
|
| }
|
|
|
| // CryptohomeClient override.
|
| - void AsyncMount(const std::string& username,
|
| + void AsyncMount(const user_manager::UserID& user_id,
|
| const std::string& key,
|
| int flags,
|
| const AsyncMethodCallback& callback) override {
|
| dbus::MethodCall method_call(cryptohome::kCryptohomeInterface,
|
| cryptohome::kCryptohomeAsyncMount);
|
| dbus::MessageWriter writer(&method_call);
|
| - writer.AppendString(username);
|
| + writer.AppendString(user_id.GetUserEmail());
|
| writer.AppendString(key);
|
| writer.AppendBool(flags & cryptohome::CREATE_IF_MISSING);
|
| writer.AppendBool(flags & cryptohome::ENSURE_EPHEMERAL);
|
| @@ -181,14 +182,14 @@ class CryptohomeClientImpl : public CryptohomeClient {
|
| }
|
|
|
| // CryptohomeClient override.
|
| - void AsyncAddKey(const std::string& username,
|
| + void AsyncAddKey(const user_manager::UserID& user_id,
|
| const std::string& key,
|
| const std::string& new_key,
|
| const AsyncMethodCallback& callback) override {
|
| dbus::MethodCall method_call(cryptohome::kCryptohomeInterface,
|
| cryptohome::kCryptohomeAsyncAddKey);
|
| dbus::MessageWriter writer(&method_call);
|
| - writer.AppendString(username);
|
| + writer.AppendString(user_id.GetUserEmail());
|
| writer.AppendString(key);
|
| writer.AppendString(new_key);
|
| proxy_->CallMethod(&method_call, kTpmDBusTimeoutMs ,
|
| @@ -332,13 +333,13 @@ class CryptohomeClientImpl : public CryptohomeClient {
|
|
|
| // CryptohomeClient override.
|
| void Pkcs11GetTpmTokenInfoForUser(
|
| - const std::string& user_email,
|
| + const user_manager::UserID& user_id,
|
| const Pkcs11GetTpmTokenInfoCallback& callback) override {
|
| dbus::MethodCall method_call(
|
| cryptohome::kCryptohomeInterface,
|
| cryptohome::kCryptohomePkcs11GetTpmTokenInfoForUser);
|
| dbus::MessageWriter writer(&method_call);
|
| - writer.AppendString(user_email);
|
| + writer.AppendString(user_id.GetUserEmail());
|
| proxy_->CallMethod(
|
| &method_call, kTpmDBusTimeoutMs ,
|
| base::Bind(
|
| @@ -469,7 +470,7 @@ class CryptohomeClientImpl : public CryptohomeClient {
|
| void AsyncTpmAttestationCreateCertRequest(
|
| attestation::PrivacyCAType pca_type,
|
| attestation::AttestationCertificateProfile certificate_profile,
|
| - const std::string& user_id,
|
| + const user_manager::UserID& user_id,
|
| const std::string& request_origin,
|
| const AsyncMethodCallback& callback) override {
|
| dbus::MethodCall method_call(
|
| @@ -478,7 +479,7 @@ class CryptohomeClientImpl : public CryptohomeClient {
|
| dbus::MessageWriter writer(&method_call);
|
| writer.AppendInt32(pca_type);
|
| writer.AppendInt32(certificate_profile);
|
| - writer.AppendString(user_id);
|
| + writer.AppendString(user_id.GetUserEmail());
|
| writer.AppendString(request_origin);
|
| proxy_->CallMethod(&method_call, kTpmDBusTimeoutMs ,
|
| base::Bind(&CryptohomeClientImpl::OnAsyncMethodCall,
|
| @@ -490,7 +491,7 @@ class CryptohomeClientImpl : public CryptohomeClient {
|
| void AsyncTpmAttestationFinishCertRequest(
|
| const std::string& pca_response,
|
| attestation::AttestationKeyType key_type,
|
| - const std::string& user_id,
|
| + const user_manager::UserID& user_id,
|
| const std::string& key_name,
|
| const AsyncMethodCallback& callback) override {
|
| dbus::MethodCall method_call(
|
| @@ -502,7 +503,7 @@ class CryptohomeClientImpl : public CryptohomeClient {
|
| pca_response.size());
|
| bool is_user_specific = (key_type == attestation::KEY_USER);
|
| writer.AppendBool(is_user_specific);
|
| - writer.AppendString(user_id);
|
| + writer.AppendString(user_id.GetUserEmail());
|
| writer.AppendString(key_name);
|
| proxy_->CallMethod(&method_call, kTpmDBusTimeoutMs ,
|
| base::Bind(&CryptohomeClientImpl::OnAsyncMethodCall,
|
| @@ -513,7 +514,7 @@ class CryptohomeClientImpl : public CryptohomeClient {
|
| // CryptohomeClient override.
|
| void TpmAttestationDoesKeyExist(
|
| attestation::AttestationKeyType key_type,
|
| - const std::string& user_id,
|
| + const user_manager::UserID& user_id,
|
| const std::string& key_name,
|
| const BoolDBusMethodCallback& callback) override {
|
| dbus::MethodCall method_call(
|
| @@ -522,7 +523,7 @@ class CryptohomeClientImpl : public CryptohomeClient {
|
| dbus::MessageWriter writer(&method_call);
|
| bool is_user_specific = (key_type == attestation::KEY_USER);
|
| writer.AppendBool(is_user_specific);
|
| - writer.AppendString(user_id);
|
| + writer.AppendString(user_id.GetUserEmail());
|
| writer.AppendString(key_name);
|
| CallBoolMethod(&method_call, callback);
|
| }
|
| @@ -530,7 +531,7 @@ class CryptohomeClientImpl : public CryptohomeClient {
|
| // CryptohomeClient override.
|
| void TpmAttestationGetCertificate(
|
| attestation::AttestationKeyType key_type,
|
| - const std::string& user_id,
|
| + const user_manager::UserID& user_id,
|
| const std::string& key_name,
|
| const DataMethodCallback& callback) override {
|
| dbus::MethodCall method_call(
|
| @@ -539,7 +540,7 @@ class CryptohomeClientImpl : public CryptohomeClient {
|
| dbus::MessageWriter writer(&method_call);
|
| bool is_user_specific = (key_type == attestation::KEY_USER);
|
| writer.AppendBool(is_user_specific);
|
| - writer.AppendString(user_id);
|
| + writer.AppendString(user_id.GetUserEmail());
|
| writer.AppendString(key_name);
|
| proxy_->CallMethod(&method_call, kTpmDBusTimeoutMs ,
|
| base::Bind(&CryptohomeClientImpl::OnDataMethod,
|
| @@ -549,7 +550,7 @@ class CryptohomeClientImpl : public CryptohomeClient {
|
|
|
| // CryptohomeClient override.
|
| void TpmAttestationGetPublicKey(attestation::AttestationKeyType key_type,
|
| - const std::string& user_id,
|
| + const user_manager::UserID& user_id,
|
| const std::string& key_name,
|
| const DataMethodCallback& callback) override {
|
| dbus::MethodCall method_call(
|
| @@ -558,7 +559,7 @@ class CryptohomeClientImpl : public CryptohomeClient {
|
| dbus::MessageWriter writer(&method_call);
|
| bool is_user_specific = (key_type == attestation::KEY_USER);
|
| writer.AppendBool(is_user_specific);
|
| - writer.AppendString(user_id);
|
| + writer.AppendString(user_id.GetUserEmail());
|
| writer.AppendString(key_name);
|
| proxy_->CallMethod(&method_call, kTpmDBusTimeoutMs ,
|
| base::Bind(&CryptohomeClientImpl::OnDataMethod,
|
| @@ -568,7 +569,7 @@ class CryptohomeClientImpl : public CryptohomeClient {
|
|
|
| // CryptohomeClient override.
|
| void TpmAttestationRegisterKey(attestation::AttestationKeyType key_type,
|
| - const std::string& user_id,
|
| + const user_manager::UserID& user_id,
|
| const std::string& key_name,
|
| const AsyncMethodCallback& callback) override {
|
| dbus::MethodCall method_call(
|
| @@ -577,7 +578,7 @@ class CryptohomeClientImpl : public CryptohomeClient {
|
| dbus::MessageWriter writer(&method_call);
|
| bool is_user_specific = (key_type == attestation::KEY_USER);
|
| writer.AppendBool(is_user_specific);
|
| - writer.AppendString(user_id);
|
| + writer.AppendString(user_id.GetUserEmail());
|
| writer.AppendString(key_name);
|
| proxy_->CallMethod(&method_call, kTpmDBusTimeoutMs ,
|
| base::Bind(&CryptohomeClientImpl::OnAsyncMethodCall,
|
| @@ -588,7 +589,7 @@ class CryptohomeClientImpl : public CryptohomeClient {
|
| // CryptohomeClient override.
|
| void TpmAttestationSignEnterpriseChallenge(
|
| attestation::AttestationKeyType key_type,
|
| - const std::string& user_id,
|
| + const user_manager::UserID& user_id,
|
| const std::string& key_name,
|
| const std::string& domain,
|
| const std::string& device_id,
|
| @@ -601,7 +602,7 @@ class CryptohomeClientImpl : public CryptohomeClient {
|
| dbus::MessageWriter writer(&method_call);
|
| bool is_user_specific = (key_type == attestation::KEY_USER);
|
| writer.AppendBool(is_user_specific);
|
| - writer.AppendString(user_id);
|
| + writer.AppendString(user_id.GetUserEmail());
|
| writer.AppendString(key_name);
|
| writer.AppendString(domain);
|
| writer.AppendArrayOfBytes(reinterpret_cast<const uint8*>(device_id.data()),
|
| @@ -620,7 +621,7 @@ class CryptohomeClientImpl : public CryptohomeClient {
|
| // CryptohomeClient override.
|
| void TpmAttestationSignSimpleChallenge(
|
| attestation::AttestationKeyType key_type,
|
| - const std::string& user_id,
|
| + const user_manager::UserID& user_id,
|
| const std::string& key_name,
|
| const std::string& challenge,
|
| const AsyncMethodCallback& callback) override {
|
| @@ -630,7 +631,7 @@ class CryptohomeClientImpl : public CryptohomeClient {
|
| dbus::MessageWriter writer(&method_call);
|
| bool is_user_specific = (key_type == attestation::KEY_USER);
|
| writer.AppendBool(is_user_specific);
|
| - writer.AppendString(user_id);
|
| + writer.AppendString(user_id.GetUserEmail());
|
| writer.AppendString(key_name);
|
| writer.AppendArrayOfBytes(reinterpret_cast<const uint8*>(challenge.data()),
|
| challenge.size());
|
| @@ -643,7 +644,7 @@ class CryptohomeClientImpl : public CryptohomeClient {
|
| // CryptohomeClient override.
|
| void TpmAttestationGetKeyPayload(
|
| attestation::AttestationKeyType key_type,
|
| - const std::string& user_id,
|
| + const user_manager::UserID& user_id,
|
| const std::string& key_name,
|
| const DataMethodCallback& callback) override {
|
| dbus::MethodCall method_call(
|
| @@ -652,7 +653,7 @@ class CryptohomeClientImpl : public CryptohomeClient {
|
| dbus::MessageWriter writer(&method_call);
|
| bool is_user_specific = (key_type == attestation::KEY_USER);
|
| writer.AppendBool(is_user_specific);
|
| - writer.AppendString(user_id);
|
| + writer.AppendString(user_id.GetUserEmail());
|
| writer.AppendString(key_name);
|
| proxy_->CallMethod(&method_call, kTpmDBusTimeoutMs ,
|
| base::Bind(&CryptohomeClientImpl::OnDataMethod,
|
| @@ -663,7 +664,7 @@ class CryptohomeClientImpl : public CryptohomeClient {
|
| // CryptohomeClient override.
|
| void TpmAttestationSetKeyPayload(
|
| attestation::AttestationKeyType key_type,
|
| - const std::string& user_id,
|
| + const user_manager::UserID& user_id,
|
| const std::string& key_name,
|
| const std::string& payload,
|
| const BoolDBusMethodCallback& callback) override {
|
| @@ -673,7 +674,7 @@ class CryptohomeClientImpl : public CryptohomeClient {
|
| dbus::MessageWriter writer(&method_call);
|
| bool is_user_specific = (key_type == attestation::KEY_USER);
|
| writer.AppendBool(is_user_specific);
|
| - writer.AppendString(user_id);
|
| + writer.AppendString(user_id.GetUserEmail());
|
| writer.AppendString(key_name);
|
| writer.AppendArrayOfBytes(reinterpret_cast<const uint8*>(payload.data()),
|
| payload.size());
|
| @@ -683,7 +684,7 @@ class CryptohomeClientImpl : public CryptohomeClient {
|
| // CryptohomeClient override.
|
| void TpmAttestationDeleteKeys(
|
| attestation::AttestationKeyType key_type,
|
| - const std::string& user_id,
|
| + const user_manager::UserID& user_id,
|
| const std::string& key_prefix,
|
| const BoolDBusMethodCallback& callback) override {
|
| dbus::MethodCall method_call(
|
| @@ -692,7 +693,7 @@ class CryptohomeClientImpl : public CryptohomeClient {
|
| dbus::MessageWriter writer(&method_call);
|
| bool is_user_specific = (key_type == attestation::KEY_USER);
|
| writer.AppendBool(is_user_specific);
|
| - writer.AppendString(user_id);
|
| + writer.AppendString(user_id.GetUserEmail());
|
| writer.AppendString(key_prefix);
|
| CallBoolMethod(&method_call, callback);
|
| }
|
| @@ -1135,8 +1136,8 @@ CryptohomeClient* CryptohomeClient::Create() {
|
|
|
| // static
|
| std::string CryptohomeClient::GetStubSanitizedUsername(
|
| - const std::string& username) {
|
| - return username + kUserIdStubHashSuffix;
|
| + const user_manager::UserID& user_id) {
|
| + return user_id.GetUserEmail() + kUserIdStubHashSuffix;
|
| }
|
|
|
| } // namespace chromeos
|
|
|