# Copyright 2016 The Chromium OS Authors. All rights reserved.
# Use of this source code is governed by a BSD-style license that can be
# found in the LICENSE file.

description     "Chromium OS trunks daemon for TPM2.0"
author          "chromium-os-dev@chromium.org"

start on started boot-services and started dbus
stop on stopping boot-services and stopped chapsd
respawn

pre-start script
  mkdir -p /var/lib/trunks
  chown trunks:trunks /var/lib/trunks
end script

expect fork

exec trunksd --simulator

# init_tpm would lock down the platform hierarchy. This is normally
# done by firmware. Without init_tpm, some services(chaps) would
# consider the TPM is uninitialized.
post-start exec trunks_client --init_tpm
