| Index: chromeos/dbus/fake_cryptohome_client.cc
|
| diff --git a/chromeos/dbus/fake_cryptohome_client.cc b/chromeos/dbus/fake_cryptohome_client.cc
|
| index 7b408544ce07d6a9ec520e1c0f7f0565d4f7eb55..d23be710ec178c6cd4d953657c1ebe43f241c40e 100644
|
| --- a/chromeos/dbus/fake_cryptohome_client.cc
|
| +++ b/chromeos/dbus/fake_cryptohome_client.cc
|
| @@ -13,7 +13,8 @@
|
| namespace chromeos {
|
|
|
| FakeCryptohomeClient::FakeCryptohomeClient()
|
| - : async_call_id_(1),
|
| + : service_is_available_(true),
|
| + async_call_id_(1),
|
| tpm_is_ready_counter_(0),
|
| unmount_result_(true),
|
| locked_(false),
|
| @@ -36,6 +37,16 @@ void FakeCryptohomeClient::ResetAsyncCallStatusHandlers() {
|
| async_call_status_data_handler_.Reset();
|
| }
|
|
|
| +void FakeCryptohomeClient::WaitForServiceToBeAvailable(
|
| + const WaitForServiceToBeAvailableCallback& callback) {
|
| + if (service_is_available_) {
|
| + base::MessageLoop::current()->PostTask(FROM_HERE,
|
| + base::Bind(callback, true));
|
| + } else {
|
| + pending_wait_for_service_to_be_available_callbacks_.push_back(callback);
|
| + }
|
| +}
|
| +
|
| void FakeCryptohomeClient::IsMounted(
|
| const BoolDBusMethodCallback& callback) {
|
| base::MessageLoop::current()->PostTask(
|
| @@ -368,6 +379,16 @@ void FakeCryptohomeClient::TpmAttestationSetKeyPayload(
|
| FROM_HERE, base::Bind(callback, DBUS_METHOD_CALL_SUCCESS, false));
|
| }
|
|
|
| +void FakeCryptohomeClient::SetServiceIsAvailable(bool is_available) {
|
| + service_is_available_ = is_available;
|
| + if (is_available) {
|
| + std::vector<WaitForServiceToBeAvailableCallback> callbacks;
|
| + callbacks.swap(pending_wait_for_service_to_be_available_callbacks_);
|
| + for (size_t i = 0; i < callbacks.size(); ++i)
|
| + callbacks[i].Run(is_available);
|
| + }
|
| +}
|
| +
|
| // static
|
| std::vector<uint8> FakeCryptohomeClient::GetStubSystemSalt() {
|
| const char kStubSystemSalt[] = "stub_system_salt";
|
|
|