<?xml version="1.0" encoding="UTF-8" ?>
<!--
  Copyright (c) 2012 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.

     dbus-binding-tool -mode=glib-server -prefix=cryptohome cryptohome.xml
                        &gt; bindings/server.h
-->
<node name="/org/chromium/">
  <interface name="org.chromium.CryptohomeInterface">
    <annotation name="org.freedesktop.DBus.GLib.CSymbol"
                value="cryptohome"/>
    <method name="IsMounted">
      <arg type="b" name="is_mounted" direction="out" />
    </method>
    <method name="IsMountedForUser">
      <arg type="s" name="username" direction="in" />
      <arg type="b" name="is_mounted" direction="out" />
      <arg type="b" name="is_ephemeral_mount" direction="out" />
    </method>
    <method name="CheckKey">
      <arg type="s" name="username" direction="in" />
      <arg type="s" name="key" direction="in" />
      <arg type="b" name="success" direction="out" />
    </method>
    <method name="AsyncCheckKey">
      <arg type="s" name="username" direction="in" />
      <arg type="s" name="key" direction="in" />
      <arg type="i" name="async_id" direction="out" />
    </method>
    <method name="ListKeysEx">
      <annotation name="org.freedesktop.DBus.GLib.Async" value="true"/>
      <arg type="ay" name="account_id" direction="in" />
      <!-- No authorization is required. -->
      <arg type="ay" name="authorization_request" direction="in" />
      <arg type="ay" name="list_keys_request" direction="in" />
      <!-- Returns a list of key labels as a ListKeysReply protobuf. -->
      <arg type="ay" name="list_keys_reply" direction="out" />
    </method>
    <method name="CheckKeyEx">
      <annotation name="org.freedesktop.DBus.GLib.Async" value="true"/>
      <arg type="ay" name="account_id" direction="in" />
      <arg type="ay" name="authorization_request" direction="in" />
      <arg type="ay" name="check_key_request" direction="in" />
      <arg type="ay" name="check_key_reply" direction="out" />
    </method>
    <method name="RemoveKeyEx">
      <annotation name="org.freedesktop.DBus.GLib.Async" value="true"/>
      <arg type="ay" name="account_id" direction="in" />
      <arg type="ay" name="authorization_request" direction="in" />
      <arg type="ay" name="remove_key_request" direction="in" />
      <arg type="ay" name="remove_key_reply" direction="out" />
    </method>
    <method name="GetKeyDataEx">
      <annotation name="org.freedesktop.DBus.GLib.Async" value="true"/>
      <arg type="ay" name="account_id" direction="in" />
      <!-- This should be an empty AuthorizationRequest.
           In the future, authorization may be used to decrypt and return
           secrets, like the UpdateAuthorization secret.
        -->
      <arg type="ay" name="authorization_request" direction="in" />
      <arg type="ay" name="get_key_data_request" direction="in" />
      <arg type="ay" name="get_key_data_reply" direction="out" />
    </method>
    <method name="MigrateKey">
      <arg type="s" name="username" direction="in" />
      <arg type="s" name="from_key" direction="in" />
      <arg type="s" name="to_key" direction="in" />
      <arg type="b" name="success" direction="out" />
    </method>
    <method name="AsyncMigrateKey">
      <arg type="s" name="username" direction="in" />
      <arg type="s" name="from_key" direction="in" />
      <arg type="s" name="to_key" direction="in" />
      <arg type="i" name="async_id" direction="out" />
    </method>
    <method name="AddKey">
      <arg type="s" name="username" direction="in" />
      <arg type="s" name="key" direction="in" />
      <arg type="s" name="new_key" direction="in" />
      <arg type="i" name="key_id" direction="out" />
      <arg type="b" name="success" direction="out" />
    </method>
    <method name="AsyncAddKey">
      <arg type="s" name="username" direction="in" />
      <arg type="s" name="key" direction="in" />
      <arg type="s" name="new_key" direction="in" />
      <!-- key_id will be returned in the return_code -->
      <arg type="i" name="async_id" direction="out" />
    </method>
    <!-- This may be called asynchronously. -->
    <method name="AddKeyEx">
      <annotation name="org.freedesktop.DBus.GLib.Async" value="true"/>
      <arg type="ay" name="account_id" direction="in" />
      <arg type="ay" name="authorization_request" direction="in" />
      <arg type="ay" name="add_key_request" direction="in" />
      <arg type="ay" name="add_key_reply" direction="out" />
    </method>
    <!-- This method looks like an AddKeyEx(clobber=true)
         but it updates the authorizing key exclusively.
    -->
    <method name="UpdateKeyEx">
      <annotation name="org.freedesktop.DBus.GLib.Async" value="true"/>
      <arg type="ay" name="account_id" direction="in" />
      <arg type="ay" name="authorization_request" direction="in" />
      <arg type="ay" name="update_key_request" direction="in" />
      <arg type="ay" name="update_key_reply" direction="out" />
    </method>
    <method name="Remove">
      <arg type="s" name="username" direction="in" />
      <arg type="b" name="success" direction="out" />
    </method>
    <method name="AsyncRemove">
      <arg type="s" name="username" direction="in" />
      <arg type="i" name="async_id" direction="out" />
    </method>
    <method name="GetSystemSalt">
      <arg type="ay" name="salt" direction="out" />
    </method>
    <method name="GetSanitizedUsername">
      <arg type="s" name="username" direction="in" />
      <arg type="s" name="sanitized" direction="out" />
    </method>
    <method name="Mount">
      <arg type="s" name="username" direction="in" />
      <arg type="s" name="key" direction="in" />
      <arg type="b" name="create_if_missing" direction="in" />
      <arg type="b" name="ensure_ephemeral" direction="in" />
      <arg type="as" name="deprecated_tracked_subdirectories" direction="in" />
      <arg type="i" name="error_num" direction="out" />
      <arg type="b" name="done" direction="out" />
    </method>
    <method name="AsyncMount">
      <annotation name="org.freedesktop.DBus.GLib.Async" value="true"/>
      <arg type="s" name="username" direction="in" />
      <arg type="s" name="key" direction="in" />
      <arg type="b" name="create_if_missing" direction="in" />
      <arg type="b" name="ensure_ephemeral" direction="in" />
      <arg type="as" name="deprecated_tracked_subdirectories" direction="in" />
      <arg type="i" name="async_id" direction="out" />
    </method>
    <!-- This may be called asynchronously. -->
    <method name="MountEx">
      <annotation name="org.freedesktop.DBus.GLib.Async" value="true"/>
      <arg type="ay" name="account_id" direction="in" />
      <arg type="ay" name="authorization_request" direction="in" />
      <arg type="ay" name="mount_request" direction="in" />
      <arg type="ay" name="mount_reply" direction="out" />
    </method>
    <method name="MountGuest">
      <arg type="i" name="error_num" direction="out" />
      <arg type="b" name="done" direction="out" />
    </method>
    <method name="AsyncMountGuest">
      <arg type="i" name="async_id" direction="out" />
    </method>
    <method name="MountPublic">
      <arg type="s" name="public_mount_id" direction="in" />
      <arg type="b" name="create_if_missing" direction="in" />
      <arg type="b" name="ensure_ephemeral" direction="in" />
      <arg type="i" name="error_num" direction="out" />
      <arg type="b" name="done" direction="out" />
    </method>
    <method name="AsyncMountPublic">
      <annotation name="org.freedesktop.DBus.GLib.Async" value="true"/>
      <arg type="s" name="public_mount_id" direction="in" />
      <arg type="b" name="create_if_missing" direction="in" />
      <arg type="b" name="ensure_ephemeral" direction="in" />
      <arg type="i" name="async_id" direction="out" />
    </method>
    <method name="RenameCryptohome">
      <annotation name="org.freedesktop.DBus.GLib.Async" value="true"/>
      <arg type="ay" name="cryptohome_id_from" direction="in" />
      <arg type="ay" name="cryptohome_id_to" direction="in" />
      <arg type="ay" name="reply" direction="out" />
    </method>
    <method name="GetAccountDiskUsage">
      <annotation name="org.freedesktop.DBus.GLib.Async" value="true"/>
      <arg type="ay" name="account_id" direction="in" />
      <arg type="ay" name="get_account_disk_usage_reply" direction="out" />
    </method>
    <method name="Unmount">
      <arg type="b" name="done" direction="out" />
    </method>
    <method name="UnmountForUser">
      <arg type="s" name="username" direction="in" />
      <arg type="b" name="done" direction="out" />
    </method>
    <method name="DoAutomaticFreeDiskSpaceControl">
      <arg type="b" name="done" direction="out" />
    </method>
    <method name="AsyncDoAutomaticFreeDiskSpaceControl">
      <arg type="i" name="async_id" direction="out" />
    </method>
    <method name="UpdateCurrentUserActivityTimestamp">
      <arg type="i" name="time_shift_sec" direction="in" />
    </method>
    <method name="TpmIsReady">
      <arg type="b" name="ready" direction="out" />
    </method>
    <method name="TpmIsEnabled">
      <arg type="b" name="enabled" direction="out" />
    </method>
    <method name="TpmGetPassword">
      <arg type="s" name="password" direction="out" />
    </method>
    <method name="TpmIsOwned">
      <arg type="b" name="owned" direction="out" />
    </method>
    <method name="TpmIsBeingOwned">
      <arg type="b" name="owning" direction="out" />
    </method>
    <method name="TpmCanAttemptOwnership">
    </method>
    <method name="TpmClearStoredPassword">
    </method>
    <method name="TpmIsAttestationPrepared">
      <arg type="b" name="prepared" direction="out" />
    </method>
    <method name="TpmVerifyAttestationData">
      <arg type="b" name="is_cros_core" />
      <arg type="b" name="verified" direction="out" />
    </method>
    <method name="TpmVerifyEK">
      <arg type="b" name="is_cros_core" />
      <arg type="b" name="verified" direction="out" />
    </method>
    <method name="TpmAttestationCreateEnrollRequest">
      <arg type="i" name="pca_type" direction="in" />
      <arg type="ay" name="pca_request" direction="out" />
    </method>
    <method name="AsyncTpmAttestationCreateEnrollRequest">
      <arg type="i" name="pca_type" direction="in" />
      <arg type="i" name="async_id" direction="out" />
    </method>
    <method name="TpmAttestationEnroll">
      <arg type="i" name="pca_type" direction="in" />
      <arg type="ay" name="pca_response" direction="in" />
      <arg type="b" name="success" direction="out" />
    </method>
    <method name="AsyncTpmAttestationEnroll">
      <arg type="i" name="pca_type" direction="in" />
      <arg type="ay" name="pca_response" direction="in" />
      <arg type="i" name="async_id" direction="out" />
    </method>
    <method name="TpmAttestationCreateCertRequest">
      <arg type="i" name="pca_type" direction="in" />
      <arg type="i" name="certificate_profile" direction="in" />
      <arg type="s" name="username" direction="in" />
      <arg type="s" name="request_origin" direction="in" />
      <arg type="ay" name="pca_request" direction="out" />
    </method>
    <method name="AsyncTpmAttestationCreateCertRequest">
      <arg type="i" name="pca_type" direction="in" />
      <arg type="i" name="certificate_profile" direction="in" />
      <arg type="s" name="username" direction="in" />
      <arg type="s" name="request_origin" direction="in" />
      <arg type="i" name="async_id" direction="out" />
    </method>
    <method name="TpmAttestationFinishCertRequest">
      <arg type="ay" name="pca_response" direction="in" />
      <arg type="b" name="is_user_specific" direction="in" />
      <arg type="s" name="username" direction="in" />
      <arg type="s" name="key_name" direction="in" />
      <arg type="ay" name="certificate" direction="out" />
      <arg type="b" name="success" direction="out" />
    </method>
    <method name="AsyncTpmAttestationFinishCertRequest">
      <arg type="ay" name="pca_response" direction="in" />
      <arg type="b" name="is_user_specific" direction="in" />
      <arg type="s" name="username" direction="in" />
      <arg type="s" name="key_name" direction="in" />
      <arg type="i" name="async_id" direction="out" />
    </method>
    <method name="TpmIsAttestationEnrolled">
      <arg type="b" name="enrolled" direction="out" />
    </method>
    <method name="TpmAttestationDoesKeyExist">
      <arg type="b" name="is_user_specific" direction="in" />
      <arg type="s" name="username" direction="in" />
      <arg type="s" name="key_name" direction="in" />
      <arg type="b" name="exists" direction="out" />
    </method>
    <method name="TpmAttestationGetCertificate">
      <arg type="b" name="is_user_specific" direction="in" />
      <arg type="s" name="username" direction="in" />
      <arg type="s" name="key_name" direction="in" />
      <arg type="ay" name="certificate" direction="out" />
      <arg type="b" name="success" direction="out" />
    </method>
    <method name="TpmAttestationGetPublicKey">
      <arg type="b" name="is_user_specific" direction="in" />
      <arg type="s" name="username" direction="in" />
      <arg type="s" name="key_name" direction="in" />
      <arg type="ay" name="public_key" direction="out" />
      <arg type="b" name="success" direction="out" />
    </method>
    <method name="TpmAttestationRegisterKey">
      <arg type="b" name="is_user_specific" direction="in" />
      <arg type="s" name="username" direction="in" />
      <arg type="s" name="key_name" direction="in" />
      <arg type="i" name="async_id" direction="out" />
    </method>
    <method name="TpmAttestationSignEnterpriseChallenge">
      <arg type="b" name="is_user_specific" direction="in" />
      <arg type="s" name="username" direction="in" />
      <arg type="s" name="key_name" direction="in" />
      <arg type="s" name="domain" direction="in" />
      <arg type="ay" name="device_id" direction="in" />
      <arg type="b" name="include_signed_public_key" direction="in" />
      <arg type="ay" name="challenge" direction="in" />
      <arg type="i" name="async_id" direction="out" />
    </method>
    <method name="TpmAttestationSignSimpleChallenge">
      <arg type="b" name="is_user_specific" direction="in" />
      <arg type="s" name="username" direction="in" />
      <arg type="s" name="key_name" direction="in" />
      <arg type="ay" name="challenge" direction="in" />
      <arg type="i" name="async_id" direction="out" />
    </method>
    <method name="TpmAttestationGetKeyPayload">
      <arg type="b" name="is_user_specific" direction="in" />
      <arg type="s" name="username" direction="in" />
      <arg type="s" name="key_name" direction="in" />
      <arg type="ay" name="payload" direction="out" />
      <arg type="b" name="success" direction="out" />
    </method>
    <method name="TpmAttestationSetKeyPayload">
      <arg type="b" name="is_user_specific" direction="in" />
      <arg type="s" name="username" direction="in" />
      <arg type="s" name="key_name" direction="in" />
      <arg type="ay" name="payload" direction="in" />
      <arg type="b" name="success" direction="out" />
    </method>
    <method name="TpmAttestationDeleteKeys">
      <arg type="b" name="is_user_specific" direction="in" />
      <arg type="s" name="username" direction="in" />
      <arg type="s" name="key_prefix" direction="in" />
      <arg type="b" name="success" direction="out" />
    </method>
    <method name="TpmAttestationGetEK">
      <arg type="s" name="ek_info" direction="out" />
      <arg type="b" name="success" direction="out" />
    </method>
    <method name="TpmAttestationResetIdentity">
      <arg type="s" name="reset_token" direction="in" />
      <arg type="ay" name="reset_request" direction="out" />
      <arg type="b" name="success" direction="out" />
    </method>
    <method name="TpmGetVersion">
      <arg type="s" name="result" direction="out" />
    </method>
    <method name="TpmGetVersionStructured">
      <arg type="u" name="family" direction="out" />
      <arg type="t" name="spec_level" direction="out" />
      <arg type="u" name="manufacturer" direction="out" />
      <arg type="u" name="tpm_model" direction="out" />
      <arg type="t" name="firmware_version" direction="out" />
      <arg type="s" name="vendor_specific" direction="out" />
    </method>
    <method name="Pkcs11IsTpmTokenReady">
      <arg type="b" name="ready" direction="out" />
    </method>
    <method name="Pkcs11IsTpmTokenReadyForUser">
      <arg type="s" name="username" direction="in" />
      <arg type="b" name="ready" direction="out" />
    </method>
    <method name="Pkcs11GetTpmTokenInfo">
      <arg type="s" name="label" direction="out" />
      <arg type="s" name="user_pin" direction="out" />
      <arg type="i" name="slot" direction="out" />
    </method>
    <method name="Pkcs11GetTpmTokenInfoForUser">
      <arg type="s" name="username" direction="in" />
      <arg type="s" name="label" direction="out" />
      <arg type="s" name="user_pin" direction="out" />
      <arg type="i" name="slot" direction="out" />
    </method>
    <method name="Pkcs11Terminate">
      <arg type="s" name="username" direction="in" />
    </method>
    <method name="GetStatusString">
      <arg type="s" name="status" direction="out" />
    </method>
    <method name="InstallAttributesGet">
      <arg type="s" name="name" direction="in" />
      <arg type="ay" name="value" direction="out" />
      <arg type="b" name="successful" direction="out" />
    </method>
    <method name="InstallAttributesSet">
      <arg type="s" name="name" direction="in" />
      <arg type="ay" name="value" direction="in" />
      <arg type="b" name="successful" direction="out" />
    </method>
    <method name="InstallAttributesCount">
      <arg type="i" name="count" direction="out" />
    </method>
    <method name="InstallAttributesFinalize">
      <arg type="b" name="successful" direction="out" />
    </method>
    <method name="InstallAttributesIsReady">
      <arg type="b" name="is_ready" direction="out" />
    </method>
    <method name="InstallAttributesIsSecure">
      <arg type="b" name="is_secure" direction="out" />
    </method>
    <method name="InstallAttributesIsInvalid">
      <arg type="b" name="is_invalid" direction="out" />
    </method>
    <method name="InstallAttributesIsFirstInstall">
      <arg type="b" name="is_first_install" direction="out" />
    </method>
    <method name="StoreEnrollmentState">
      <arg type="ay" name="enrollment_state" direction="in" />
      <arg type="b" name="success" direction="out" />
    </method>
    <method name="LoadEnrollmentState">
      <arg type="ay" name="enrollment_state" direction="out" />
      <arg type="b" name="success" direction="out" />
    </method>
    <!-- May be called asynchronously.  Both arguments are protobufs:
         request: SignBootLockboxRequest
         reply: BaseReply with a SignBootLockboxReply extension on success
    -->
    <method name="SignBootLockbox">
      <annotation name="org.freedesktop.DBus.GLib.Async" value="true"/>
      <arg type="ay" name="request" direction="in" />
      <arg type="ay" name="reply" direction="out" />
    </method>
    <!-- May be called asynchronously.  Both arguments are protobufs:
         request: VerifyBootLockboxRequest
         reply: BaseReply
    -->
    <method name="VerifyBootLockbox">
      <annotation name="org.freedesktop.DBus.GLib.Async" value="true"/>
      <arg type="ay" name="request" direction="in" />
      <arg type="ay" name="reply" direction="out" />
    </method>
    <!-- May be called asynchronously.  Both arguments are protobufs:
         request: FinalizeBootLockboxRequest
         reply: BaseReply
    -->
    <method name="FinalizeBootLockbox">
      <annotation name="org.freedesktop.DBus.GLib.Async" value="true"/>
      <arg type="ay" name="request" direction="in" />
      <arg type="ay" name="reply" direction="out" />
    </method>
    <!-- May be called asynchronously.  Both arguments are protobufs:
         request: GetBootAttributeRequest
         reply: BaseReply with a GetBootAttributeReply extension on success
    -->
    <method name="GetBootAttribute">
      <annotation name="org.freedesktop.DBus.GLib.Async" value="true"/>
      <arg type="ay" name="request" direction="in" />
      <arg type="ay" name="reply" direction="out" />
    </method>
    <!-- May be called asynchronously.  Both arguments are protobufs:
         request: SetBootAttributeRequest
         reply: BaseReply
    -->
    <method name="SetBootAttribute">
      <annotation name="org.freedesktop.DBus.GLib.Async" value="true"/>
      <arg type="ay" name="request" direction="in" />
      <arg type="ay" name="reply" direction="out" />
    </method>
    <!-- May be called asynchronously.  Both arguments are protobufs:
         request: FlushAndSignBootAttributes
         reply: BaseReply
    -->
    <method name="FlushAndSignBootAttributes">
      <annotation name="org.freedesktop.DBus.GLib.Async" value="true"/>
      <arg type="ay" name="request" direction="in" />
      <arg type="ay" name="reply" direction="out" />
    </method>
    <!-- May be called asynchronously.  Both arguments are protobufs:
         request: GetLoginStatusRequest
         reply: BaseReply with a GetLoginStatusReply extension on success
    -->
    <method name="GetLoginStatus">
      <annotation name="org.freedesktop.DBus.GLib.Async" value="true"/>
      <arg type="ay" name="request" direction="in" />
      <arg type="ay" name="reply" direction="out" />
    </method>
    <!-- May be called asynchronously.  Both arguments are protobufs:
         request: GetTpmStatusRequest
         reply: BaseReply with a GetTpmStatusReply extension on success
    -->
    <method name="GetTpmStatus">
      <annotation name="org.freedesktop.DBus.GLib.Async" value="true"/>
      <arg type="ay" name="request" direction="in" />
      <arg type="ay" name="reply" direction="out" />
    </method>
    <!-- May be called asynchronously.  Both arguments are protobufs:
         request: GetEndorsementInfoRequest
         reply: BaseReply with a GetEndorsementInfoReply extension on success
    -->
    <method name="GetEndorsementInfo">
      <annotation name="org.freedesktop.DBus.GLib.Async" value="true"/>
      <arg type="ay" name="request" direction="in" />
      <arg type="ay" name="reply" direction="out" />
    </method>
    <!-- May be called asynchronously.  Both arguments are protobufs:
         request: InitializeCastKey
         reply: BaseReply
    -->
    <method name="InitializeCastKey">
      <annotation name="org.freedesktop.DBus.GLib.Async" value="true"/>
      <arg type="ay" name="request" direction="in" />
      <arg type="ay" name="reply" direction="out" />
    </method>

    <!-- May be called asynchronously.  Both arguments are protobufs:
         request: GetFirmwareManagementParametersRequest
         reply: BaseReply with a GetFirmwareManagementParametersReply
             extension on success
    -->
    <method name="GetFirmwareManagementParameters">
      <annotation name="org.freedesktop.DBus.GLib.Async" value="true"/>
      <arg type="ay" name="request" direction="in" />
      <arg type="ay" name="reply" direction="out" />
    </method>
    <!-- May be called asynchronously.  Both arguments are protobufs:
         request: SetFirmwareManagementParametersRequest
         reply: BaseReply
    -->
    <method name="SetFirmwareManagementParameters">
      <annotation name="org.freedesktop.DBus.GLib.Async" value="true"/>
      <arg type="ay" name="request" direction="in" />
      <arg type="ay" name="reply" direction="out" />
    </method>
    <!-- May be called asynchronously.  Both arguments are protobufs:
         request: RemoveFirmwareManagementParametersRequest
         reply: BaseReply
    -->
    <method name="RemoveFirmwareManagementParameters">
      <annotation name="org.freedesktop.DBus.GLib.Async" value="true"/>
      <arg type="ay" name="request" direction="in" />
      <arg type="ay" name="reply" direction="out" />
    </method>
    <!-- The account_id argument is a protobuf. Since the migration process
         may take arbitrary long time, this dbus method just kicks it and
         returns immediately. The actual results are notified back by:
         DircryptoMigrationProgress signal.
         account_id: AccountIdentifier
    -->
    <method name="MigrateToDircrypto">
      <arg type="ay" name="account_id" direction="in" />
    </method>
    <!-- The account_id argument is a protobuf. Since the migration process
         may take arbitrary long time, this dbus method just kicks it and
         returns immediately. The actual results are notified back by:
         DircryptoMigrationProgress signal.
         account_id: AccountIdentifier
         migrate_request: MigrateToDircryptoRequest
    -->
    <method name="MigrateToDircryptoEx">
      <arg type="ay" name="account_id" direction="in" />
      <arg type="ay" name="migrate_request" direction="in" />
    </method>
    <!-- Whether the user identified by |account_id| needs to migrate to
         dircrypto. Returns true if the migration has not started or incomplete.
    -->
    <method name="NeedsDircryptoMigration">
      <arg type="ay" name="account_id" direction="in" />
      <arg type="b" name="needs_dircrypto_migration" direction="out" />
    </method>

    <!-- Signals:
           TpmInitStatus: Emitted when TPM initialization status changes.
           AsyncCallStatus: Emitted when a legacy asynchronous call has
               finished and the call returns only status.
           AsyncCallStatusWithData: Emitted when a legacy asynchronous call has
               finished and the call returns status and data.
           LowDiskSpace: Emitted when the system is running low on disk space
               for home directories.
           DircryptoMigrationProgress: Periodically emitted when the migration
               of a home directory is in progress, to notify the updates to UI.
    -->
    <signal name="TpmInitStatus">
      <arg type="b" name="ready" />
      <arg type="b" name="owned" />
      <arg type="b" name="was_owned_this_boot" />
    </signal>
    <signal name="AsyncCallStatus">
      <arg type="i" name="async_id" />
      <arg type="b" name="return_status" />
      <arg type="i" name="return_code" />
    </signal>
    <signal name="AsyncCallStatusWithData">
      <arg type="i" name="async_id" />
      <arg type="b" name="return_status" />
      <arg type="ay" name="data" />
    </signal>
    <signal name="LowDiskSpace">
      <arg type="t" name="disk_free_bytes" />
    </signal>
    <signal name="DircryptoMigrationProgress">
      <arg type="i" name="status" />
      <arg type="t" name="current_bytes" />
      <arg type="t" name="total_bytes" />
    </signal>
  </interface>
</node>
