diff options
author | Utkarsh Sanghi <usanghi@chromium.org> | 2015-07-14 09:17:50 -0700 |
---|---|---|
committer | ChromeOS Commit Bot <chromeos-commit-bot@chromium.org> | 2015-07-15 03:39:20 +0000 |
commit | 951eb5974a3873720e8b942b270a7bffa89b2ffb (patch) | |
tree | 724b127cc6372c1a9aa7ee9a1f70ebdd22e008ef | |
parent | a5a2f2ea49e0085bf8d7f6f2b6e7cd624d710c01 (diff) | |
download | trunks-951eb5974a3873720e8b942b270a7bffa89b2ffb.tar.gz |
trunks: Init TpmHandle before starting trunksd
BUG=None
TEST=restart trunksd on DUT
Change-Id: I82153c212347f6812b2fde92f05074efb363ce62
Reviewed-on: https://chromium-review.googlesource.com/285327
Reviewed-by: Vadim Bendebury <vbendeb@google.com>
Tested-by: Vadim Bendebury <vbendeb@google.com>
Tested-by: Utkarsh Sanghi <usanghi@chromium.org>
Commit-Queue: Utkarsh Sanghi <usanghi@chromium.org>
-rw-r--r-- | trunksd.cc | 11 |
1 files changed, 6 insertions, 5 deletions
@@ -55,18 +55,18 @@ void InitMinijailSandbox() { class TrunksDaemon : public chromeos::DBusServiceDaemon { public: - explicit TrunksDaemon(trunks::TpmHandle* tpm_handle) : + explicit TrunksDaemon(trunks::CommandTransceiver* transceiver) : chromeos::DBusServiceDaemon(trunks::kTrunksServiceName) { - tpm_handle_.reset(tpm_handle); + transceiver_.reset(transceiver); background_thread_.reset(new base::Thread(kBackgroundThreadName)); CHECK(background_thread_->Start()); // Chain together command transceivers: // [IPC] --> TrunksService --> BackgroundCommandTransceiver --> // ResourceManager --> TpmHandle --> [TPM] - factory_.reset(new trunks::TrunksFactoryImpl(tpm_handle_.get())); + factory_.reset(new trunks::TrunksFactoryImpl(transceiver_.get())); resource_manager_.reset(new trunks::ResourceManager( *factory_, - tpm_handle_.get())); + transceiver_.get())); background_thread_->message_loop_proxy()->PostNonNestableTask( FROM_HERE, base::Bind(&trunks::ResourceManager::Initialize, @@ -89,7 +89,7 @@ class TrunksDaemon : public chromeos::DBusServiceDaemon { private: std::unique_ptr<trunks::TrunksService> trunks_service_; - std::unique_ptr<trunks::TpmHandle> tpm_handle_; + std::unique_ptr<trunks::CommandTransceiver> transceiver_; // Thread for executing TPM comands. std::unique_ptr<base::Thread> background_thread_; std::unique_ptr<trunks::TrunksFactory> factory_; @@ -106,6 +106,7 @@ int main(int argc, char **argv) { trunks::TpmHandle tpm_handle; // AtExitManager must be instantiated before tpm_handle.Init() TrunksDaemon daemon(&tpm_handle); + CHECK(tpm_handle.Init()); InitMinijailSandbox(); LOG(INFO) << "Trunks Service Started"; return daemon.Run(); |