blob: 3c84959a4e550ddbf4f55379c866a637815c02cd [file] [log] [blame]
<?xml version="1.0" encoding="UTF-8" ?>
<node name="/" xmlns:tp="http://telepathy.freedesktop.org/wiki/DbusSpec#extensions-v0">
<interface name="org.chromium.tpmd">
<method name="AllocateNvram">
<tp:docstring>
Allocates an nvram at the specified index of the specified size. If
there is an existing nvram at the specified index, fails.
</tp:docstring>
<arg name="index" type="u" direction="in">
<tp:docstring>
Index at which to allocate the nvram object on the TPM.
</tp:docstring>
</arg>
<arg name="size" type="u" direction="in">
<tp:docstring>
Length of the allocated nvram, in bytes.
</tp:docstring>
</arg>
<arg name="options" type="a{sv}" direction="in">
<tp:docstring>
Extra options for this NVRAM area. Supported keys: "LockOnce", with a
boolean value.
</tp:docstring>
</arg>
<arg name="path" type="o" direction="out">
<tp:docstring>
The path to a DBus object representing the newly-allocated nvram slot.
</tp:docstring>
</arg>
</method>
<method name="GetNvram">
<tp:docstring>
Returns the path of a DBus object representing an existing nvram slot on
the TPM.
</tp:docstring>
<arg name="index" type="u" direction="in">
<tp:docstring>
Index at which to allocate the nvram object on the TPM.
</tp:docstring>
</arg>
<arg name="path" type="o" direction="out">
<tp:docstring>
The path to a DBus object representing the newly-allocated nvram slot.
</tp:docstring>
</arg>
</method>
<method name="Encrypt">
<tp:docstring>
Encrypts a supplied plaintext with the tpmd sealing key, returning the
ciphertext.
</tp:docstring>
<arg name="plaintext" type="ay" direction="in">
<tp:docstring>
Plaintext to encrypt with the sealing key.
</tp:docstring>
</arg>
<arg name="ciphertext" type="ay" direction="out">
<tp:docstring>
Ciphertext encrypted with the sealing key.
</tp:docstring>
</arg>
</method>
<method name="Decrypt">
<tp:docstring>
Decrypts a supplied ciphertext with the tpmd sealing key, returning the
plaintext.
</tp:docstring>
<arg name="ciphertext" type="ay" direction="in">
<tp:docstring>
Ciphertext to decrypt with the sealing key.
</tp:docstring>
</arg>
<arg name="plaintext" type="ay" direction="out">
<tp:docstring>
Plaintext decrypted with the sealing key.
</tp:docstring>
</arg>
</method>
<method name="GetStatus">
<tp:docstring>
Returns the status of the TPM as a JSON string.
</tp:docstring>
<arg name="status" type="s" direction="out">
<tp:docstring>
TPM status.
</tp:docstring>
</arg>
</method>
<property name="IsReady" type="b">
<tp:docstring>
True if the TPM is ready for Encrypt, Decrypt, and NVRAM operations. It
is always safe to call GetStatus.
</tp:docstring>
</property>
</interface>
</node>