Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(173)

Unified Diff: chromeos/dbus/cryptohome_client.cc

Issue 2727713003: Update FWMP in TPM (Closed)
Patch Set: Nits Created 3 years, 9 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
« no previous file with comments | « chromeos/dbus/cryptohome_client.h ('k') | chromeos/dbus/fake_cryptohome_client.h » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: chromeos/dbus/cryptohome_client.cc
diff --git a/chromeos/dbus/cryptohome_client.cc b/chromeos/dbus/cryptohome_client.cc
index 8cfc527b6bacad6a6d736527e95634fc95db14b7..0893ce2c74b6740b2048dcad4beb56911eb0e7e0 100644
--- a/chromeos/dbus/cryptohome_client.cc
+++ b/chromeos/dbus/cryptohome_client.cc
@@ -889,48 +889,36 @@ class CryptohomeClientImpl : public CryptohomeClient {
void GetBootAttribute(const cryptohome::GetBootAttributeRequest& request,
const ProtobufMethodCallback& callback) override {
- const char* method_name = cryptohome::kCryptohomeGetBootAttribute;
- dbus::MethodCall method_call(cryptohome::kCryptohomeInterface, method_name);
-
- dbus::MessageWriter writer(&method_call);
- writer.AppendProtoAsArrayOfBytes(request);
-
- proxy_->CallMethod(&method_call,
- kTpmDBusTimeoutMs ,
- base::Bind(&CryptohomeClientImpl::OnBaseReplyMethod,
- weak_ptr_factory_.GetWeakPtr(),
- callback));
+ CallCryptohomeMethod(cryptohome::kCryptohomeGetBootAttribute, request,
+ callback);
}
void SetBootAttribute(const cryptohome::SetBootAttributeRequest& request,
const ProtobufMethodCallback& callback) override {
- const char* method_name = cryptohome::kCryptohomeSetBootAttribute;
- dbus::MethodCall method_call(cryptohome::kCryptohomeInterface, method_name);
-
- dbus::MessageWriter writer(&method_call);
- writer.AppendProtoAsArrayOfBytes(request);
-
- proxy_->CallMethod(&method_call,
- kTpmDBusTimeoutMs ,
- base::Bind(&CryptohomeClientImpl::OnBaseReplyMethod,
- weak_ptr_factory_.GetWeakPtr(),
- callback));
+ CallCryptohomeMethod(cryptohome::kCryptohomeSetBootAttribute, request,
+ callback);
}
void FlushAndSignBootAttributes(
const cryptohome::FlushAndSignBootAttributesRequest& request,
const ProtobufMethodCallback& callback) override {
- const char* method_name = cryptohome::kCryptohomeFlushAndSignBootAttributes;
- dbus::MethodCall method_call(cryptohome::kCryptohomeInterface, method_name);
+ CallCryptohomeMethod(cryptohome::kCryptohomeFlushAndSignBootAttributes,
+ request, callback);
+ }
- dbus::MessageWriter writer(&method_call);
- writer.AppendProtoAsArrayOfBytes(request);
+ void RemoveFirmwareManagementParametersFromTpm(
+ const cryptohome::RemoveFirmwareManagementParametersRequest& request,
+ const ProtobufMethodCallback& callback) override {
+ CallCryptohomeMethod(
+ cryptohome::kCryptohomeRemoveFirmwareManagementParameters, request,
+ callback);
+ }
- proxy_->CallMethod(&method_call,
- kTpmDBusTimeoutMs ,
- base::Bind(&CryptohomeClientImpl::OnBaseReplyMethod,
- weak_ptr_factory_.GetWeakPtr(),
- callback));
+ void SetFirmwareManagementParametersInTpm(
+ const cryptohome::SetFirmwareManagementParametersRequest& request,
+ const ProtobufMethodCallback& callback) override {
+ CallCryptohomeMethod(cryptohome::kCryptohomeSetFirmwareManagementParameters,
+ request, callback);
}
void MigrateToDircrypto(const cryptohome::Identification& cryptohome_id,
@@ -1246,6 +1234,23 @@ class CryptohomeClientImpl : public CryptohomeClient {
signal << " failed.";
}
+ // Makes an asynchronous D-Bus call, using cryptohome interface. |method_name|
+ // is the name of the method to be called. |request| is the specific request
+ // for the method, including the data required to be sent. |callback| is
+ // invoked when the response is received.
+ void CallCryptohomeMethod(const std::string& method_name,
+ const google::protobuf::MessageLite& request,
+ const ProtobufMethodCallback& callback) {
+ dbus::MethodCall method_call(cryptohome::kCryptohomeInterface, method_name);
+
+ dbus::MessageWriter writer(&method_call);
+ writer.AppendProtoAsArrayOfBytes(request);
+
+ proxy_->CallMethod(&method_call, kTpmDBusTimeoutMs,
+ base::Bind(&CryptohomeClientImpl::OnBaseReplyMethod,
+ weak_ptr_factory_.GetWeakPtr(), callback));
+ }
+
dbus::ObjectProxy* proxy_;
std::unique_ptr<BlockingMethodCaller> blocking_method_caller_;
AsyncCallStatusHandler async_call_status_handler_;
« no previous file with comments | « chromeos/dbus/cryptohome_client.h ('k') | chromeos/dbus/fake_cryptohome_client.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698