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

Unified Diff: chromeos/dbus/cryptohome_client.cc

Issue 2727713003: Update FWMP in TPM (Closed)
Patch Set: Nit 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
Index: chromeos/dbus/cryptohome_client.cc
diff --git a/chromeos/dbus/cryptohome_client.cc b/chromeos/dbus/cryptohome_client.cc
index 8cfc527b6bacad6a6d736527e95634fc95db14b7..29bbfae1cafb05bee1c5b12b879aacb6a91af7b2 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,24 @@ class CryptohomeClientImpl : public CryptohomeClient {
signal << " failed.";
}
+ // Makes an asynchronous D-Bus call, using cryptohome interface.
+ // |method_name| - the name of the method to be called.
+ // |request| - the specific request for the method, including the data
+ // required to be sent.
+ // |callback| - the callback to be 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_;

Powered by Google App Engine
This is Rietveld 408576698