blob: 80fc2e6a2eac96cb70d11da1bf7e36c206fcd871 [file] [log] [blame]
<?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.
-->
<!--
This file defines the Chaps D-Bus interface. It can be used to generate
glib bindings as follows:
dbus-binding-tool -mode=glib-server -prefix=chaps chaps_interface.xml
&gt; bindings_server.h
-->
<!-- The DTD to help xmllint.
-->
<!DOCTYPE node PUBLIC
"-//freedesktop//DTD D-Bus Object Introspection 1.0//EN"
"http://standards.freedesktop.org/dbus/1.0/introspect.dtd">
<node name="/org/chromium/Chaps">
<interface name="org.chromium.ChapsEvents">
</interface>
<interface name="org.chromium.Chaps">
<!-- Token management methods. -->
<method name="OpenIsolate">
<arg type="ay" name="isolate_credential_in" direction="in"/>
<arg type="ay" name="isolate_credential_out" direction="out"/>
<arg type="b" name="new_isolate_created" direction="out"/>
<arg type="b" name="result" direction="out">
<annotation name="org.freedesktop.DBus.GLib.ReturnVal" value=""/>
</arg>
</method>
<method name="CloseIsolate">
<arg type="ay" name="isolate_credential" direction="in"/>
</method>
<method name="LoadToken">
<arg type="ay" name="isolate_credential" direction="in"/>
<arg type="s" name="path" direction="in"/>
<arg type="ay" name="auth_data" direction="in"/>
<arg type="s" name="label" direction="in"/>
<arg type="t" name="slot_id" direction="out" />
<arg type="b" name="result" direction="out">
<annotation name="org.freedesktop.DBus.GLib.ReturnVal" value=""/>
</arg>
</method>
<method name="UnloadToken">
<arg type="ay" name="isolate_credential" direction="in"/>
<arg type="s" name="path" direction="in"/>
</method>
<method name="ChangeTokenAuthData">
<arg type="s" name="path" direction="in"/>
<arg type="ay" name="old_auth_data" direction="in"/>
<arg type="ay" name="new_auth_data" direction="in"/>
</method>
<method name="GetTokenPath">
<arg type="ay" name="isolate_credential" direction="in"/>
<arg type="t" name="slot_id" direction="in"/>
<arg type="s" name="path" direction="out"/>
<arg type="b" name="result" direction="out">
<annotation name="org.freedesktop.DBus.GLib.ReturnVal" value=""/>
</arg>
</method>
<!-- Logging methods. -->
<method name="SetLogLevel">
<arg type="i" name="level" direction="in"/>
</method>
<!-- Methods that map to PKCS #11 calls. Each method name is identical to
the PKCS #11 function name except for the "C_" prefix.
Note: PKCS #11 types that are CK_ULONG map to an unsigned int which
is of a different size depending on whether it is a 32-bit or. 64-bit
platform. For chaps, these are always internally represented as
uint64_t.
The |result| is marshalled as a 32-bit unsigned integer. Since,
there are a finite number of PKCS #11 defined result value (CK_RV)
constants, there are no 64-bit -> 32-bit truncation issues to worry
about.
TODO(dkrahn): For consistency, also represent |result| internally as a
64-bit value.
-->
<!-- PKCS #11 v2.20 section 11.5 page 106. -->
<method name="GetSlotList">
<arg type="ay" name="isolate_credential" direction="in"/>
<arg type="b" name="token_present" direction="in"/>
<arg type="at" name="slot_list" direction="out"/>
<arg type="u" name="result" direction="out">
<annotation name="org.freedesktop.DBus.GLib.ReturnVal" value=""/>
</arg>
</method>
<!-- PKCS #11 v2.20 section 11.5 page 108. -->
<method name="GetSlotInfo">
<arg type="ay" name="isolate_credential" direction="in"/>
<arg type="t" name="slot_id" direction="in"/>
<arg type="ay" name="slot_description" direction="out"/>
<arg type="ay" name="manufacturer_id" direction="out"/>
<arg type="t" name="flags" direction="out"/>
<arg type="y" name="hardware_version_major" direction="out"/>
<arg type="y" name="hardware_version_minor" direction="out"/>
<arg type="y" name="firmware_version_major" direction="out"/>
<arg type="y" name="firmware_version_minor" direction="out"/>
<arg type="u" name="result" direction="out">
<annotation name="org.freedesktop.DBus.GLib.ReturnVal" value=""/>
</arg>
</method>
<!-- PKCS #11 v2.20 section 11.5 page 109. -->
<method name="GetTokenInfo">
<arg type="ay" name="isolate_credential" direction="in"/>
<arg type="t" name="slot_id" direction="in"/>
<arg type="ay" name="label" direction="out"/>
<arg type="ay" name="manufacturer_id" direction="out"/>
<arg type="ay" name="model" direction="out"/>
<arg type="ay" name="serial_number" direction="out"/>
<arg type="t" name="flags" direction="out"/>
<arg type="t" name="max_session_count" direction="out"/>
<arg type="t" name="session_count" direction="out"/>
<arg type="t" name="max_session_count_rw" direction="out"/>
<arg type="t" name="session_count_rw" direction="out"/>
<arg type="t" name="max_pin_len" direction="out"/>
<arg type="t" name="min_pin_len" direction="out"/>
<arg type="t" name="total_public_memory" direction="out"/>
<arg type="t" name="free_public_memory" direction="out"/>
<arg type="t" name="total_private_memory" direction="out"/>
<arg type="t" name="free_private_memory" direction="out"/>
<arg type="y" name="hardware_version_major" direction="out"/>
<arg type="y" name="hardware_version_minor" direction="out"/>
<arg type="y" name="firmware_version_major" direction="out"/>
<arg type="y" name="firmware_version_minor" direction="out"/>
<arg type="u" name="result" direction="out">
<annotation name="org.freedesktop.DBus.GLib.ReturnVal" value=""/>
</arg>
</method>
<!-- PKCS #11 v2.20 section 11.5 page 111. -->
<method name="GetMechanismList">
<arg type="ay" name="isolate_credential" direction="in"/>
<arg type="t" name="slot_id" direction="in"/>
<arg type="at" name="mechanism_list" direction="out"/>
<arg type="u" name="result" direction="out">
<annotation name="org.freedesktop.DBus.GLib.ReturnVal" value=""/>
</arg>
</method>
<!-- PKCS #11 v2.20 section 11.5 page 112. -->
<method name="GetMechanismInfo">
<arg type="ay" name="isolate_credential" direction="in"/>
<arg type="t" name="slot_id" direction="in"/>
<arg type="t" name="mechanism_type" direction="in"/>
<arg type="t" name="min_key_size" direction="out"/>
<arg type="t" name="max_key_size" direction="out"/>
<arg type="t" name="flags" direction="out"/>
<arg type="u" name="result" direction="out">
<annotation name="org.freedesktop.DBus.GLib.ReturnVal" value=""/>
</arg>
</method>
<!-- PKCS #11 v2.20 section 11.5 page 113. -->
<method name="InitToken">
<arg type="ay" name="isolate_credential" direction="in"/>
<arg type="t" name="slot_id" direction="in"/>
<arg type="b" name="use_null_pin" direction="in"/>
<arg type="s" name="optional_so_pin" direction="in"/>
<arg type="ay" name="new_token_label" direction="in"/>
<arg type="u" name="result" direction="out">
<annotation name="org.freedesktop.DBus.GLib.ReturnVal" value=""/>
</arg>
</method>
<!-- PKCS #11 v2.20 section 11.5 page 115. -->
<method name="InitPIN">
<arg type="ay" name="isolate_credential" direction="in"/>
<arg type="t" name="session_id" direction="in"/>
<arg type="b" name="use_null_pin" direction="in"/>
<arg type="s" name="optional_user_pin" direction="in"/>
<arg type="u" name="result" direction="out">
<annotation name="org.freedesktop.DBus.GLib.ReturnVal" value=""/>
</arg>
</method>
<!-- PKCS #11 v2.20 section 11.5 page 116. -->
<method name="SetPIN">
<arg type="ay" name="isolate_credential" direction="in"/>
<arg type="t" name="session_id" direction="in"/>
<arg type="b" name="use_null_old_pin" direction="in"/>
<arg type="s" name="optional_old_pin" direction="in"/>
<arg type="b" name="use_null_new_pin" direction="in"/>
<arg type="s" name="optional_new_pin" direction="in"/>
<arg type="u" name="result" direction="out">
<annotation name="org.freedesktop.DBus.GLib.ReturnVal" value=""/>
</arg>
</method>
<!-- PKCS #11 v2.20 section 11.6 page 117. -->
<method name="OpenSession">
<arg type="ay" name="isolate_credential" direction="in"/>
<arg type="t" name="slot_id" direction="in"/>
<arg type="t" name="flags" direction="in"/>
<arg type="t" name="session_id" direction="out"/>
<arg type="u" name="result" direction="out">
<annotation name="org.freedesktop.DBus.GLib.ReturnVal" value=""/>
</arg>
</method>
<!-- PKCS #11 v2.20 section 11.6 page 118. -->
<method name="CloseSession">
<arg type="ay" name="isolate_credential" direction="in"/>
<arg type="t" name="session_id" direction="in"/>
<arg type="u" name="result" direction="out">
<annotation name="org.freedesktop.DBus.GLib.ReturnVal" value=""/>
</arg>
</method>
<!-- PKCS #11 v2.20 section 11.6 page 120. -->
<method name="CloseAllSessions">
<arg type="ay" name="isolate_credential" direction="in"/>
<arg type="t" name="slot_id" direction="in"/>
<arg type="u" name="result" direction="out">
<annotation name="org.freedesktop.DBus.GLib.ReturnVal" value=""/>
</arg>
</method>
<!-- PKCS #11 v2.20 section 11.6 page 120. -->
<method name="GetSessionInfo">
<arg type="ay" name="isolate_credential" direction="in"/>
<arg type="t" name="session_id" direction="in"/>
<arg type="t" name="slot_id" direction="out"/>
<arg type="t" name="state" direction="out"/>
<arg type="t" name="flags" direction="out"/>
<arg type="t" name="device_error" direction="out"/>
<arg type="u" name="result" direction="out">
<annotation name="org.freedesktop.DBus.GLib.ReturnVal" value=""/>
</arg>
</method>
<!-- PKCS #11 v2.20 section 11.6 page 121. -->
<method name="GetOperationState">
<arg type="ay" name="isolate_credential" direction="in"/>
<arg type="t" name="session_id" direction="in"/>
<arg type="ay" name="operation_state" direction="out"/>
<arg type="u" name="result" direction="out">
<annotation name="org.freedesktop.DBus.GLib.ReturnVal" value=""/>
</arg>
</method>
<!-- PKCS #11 v2.20 section 11.6 page 123. -->
<method name="SetOperationState">
<arg type="ay" name="isolate_credential" direction="in"/>
<arg type="t" name="session_id" direction="in"/>
<arg type="ay" name="operation_state" direction="in"/>
<arg type="t" name="encryption_key_handle" direction="in"/>
<arg type="t" name="authentication_key_handle" direction="in"/>
<arg type="u" name="result" direction="out">
<annotation name="org.freedesktop.DBus.GLib.ReturnVal" value=""/>
</arg>
</method>
<!-- PKCS #11 v2.20 section 11.6 page 125. -->
<method name="Login">
<arg type="ay" name="isolate_credential" direction="in"/>
<arg type="t" name="session_id" direction="in"/>
<arg type="t" name="user_type" direction="in"/>
<arg type="b" name="use_null_pin" direction="in"/>
<arg type="s" name="optional_pin" direction="in"/>
<arg type="u" name="result" direction="out">
<annotation name="org.freedesktop.DBus.GLib.ReturnVal" value=""/>
</arg>
</method>
<!-- PKCS #11 v2.20 section 11.6 page 127. -->
<method name="Logout">
<arg type="ay" name="isolate_credential" direction="in"/>
<arg type="t" name="session_id" direction="in"/>
<arg type="u" name="result" direction="out">
<annotation name="org.freedesktop.DBus.GLib.ReturnVal" value=""/>
</arg>
</method>
<!-- PKCS #11 v2.20 section 11.7 page 128. -->
<method name="CreateObject">
<arg type="ay" name="isolate_credential" direction="in"/>
<arg type="t" name="session_id" direction="in"/>
<arg type="ay" name="attributes" direction="in"/>
<arg type="t" name="new_object_handle" direction="out"/>
<arg type="u" name="result" direction="out">
<annotation name="org.freedesktop.DBus.GLib.ReturnVal" value=""/>
</arg>
</method>
<!-- PKCS #11 v2.20 section 11.7 page 130. -->
<method name="CopyObject">
<arg type="ay" name="isolate_credential" direction="in"/>
<arg type="t" name="session_id" direction="in"/>
<arg type="t" name="object_handle" direction="in"/>
<arg type="ay" name="attributes" direction="in"/>
<arg type="t" name="new_object_handle" direction="out"/>
<arg type="u" name="result" direction="out">
<annotation name="org.freedesktop.DBus.GLib.ReturnVal" value=""/>
</arg>
</method>
<!-- PKCS #11 v2.20 section 11.7 page 131. -->
<method name="DestroyObject">
<arg type="ay" name="isolate_credential" direction="in"/>
<arg type="t" name="session_id" direction="in"/>
<arg type="t" name="object_handle" direction="in"/>
<arg type="u" name="result" direction="out">
<annotation name="org.freedesktop.DBus.GLib.ReturnVal" value=""/>
</arg>
</method>
<!-- PKCS #11 v2.20 section 11.7 page 132. -->
<method name="GetObjectSize">
<arg type="ay" name="isolate_credential" direction="in"/>
<arg type="t" name="session_id" direction="in"/>
<arg type="t" name="object_handle" direction="in"/>
<arg type="t" name="object_size" direction="out"/>
<arg type="u" name="result" direction="out">
<annotation name="org.freedesktop.DBus.GLib.ReturnVal" value=""/>
</arg>
</method>
<!-- PKCS #11 v2.20 section 11.7 page 133. -->
<method name="GetAttributeValue">
<arg type="ay" name="isolate_credential" direction="in"/>
<arg type="t" name="session_id" direction="in"/>
<arg type="t" name="object_handle" direction="in"/>
<arg type="ay" name="attributes_in" direction="in"/>
<arg type="ay" name="attributes_out" direction="out"/>
<arg type="u" name="result" direction="out">
<annotation name="org.freedesktop.DBus.GLib.ReturnVal" value=""/>
</arg>
</method>
<!-- PKCS #11 v2.20 section 11.7 page 135. -->
<method name="SetAttributeValue">
<arg type="ay" name="isolate_credential" direction="in"/>
<arg type="t" name="session_id" direction="in"/>
<arg type="t" name="object_handle" direction="in"/>
<arg type="ay" name="attributes" direction="in"/>
<arg type="u" name="result" direction="out">
<annotation name="org.freedesktop.DBus.GLib.ReturnVal" value=""/>
</arg>
</method>
<!-- PKCS #11 v2.20 section 11.7 page 136. -->
<method name="FindObjectsInit">
<arg type="ay" name="isolate_credential" direction="in"/>
<arg type="t" name="session_id" direction="in"/>
<arg type="ay" name="attributes" direction="in"/>
<arg type="u" name="result" direction="out">
<annotation name="org.freedesktop.DBus.GLib.ReturnVal" value=""/>
</arg>
</method>
<!-- PKCS #11 v2.20 section 11.7 page 137. -->
<method name="FindObjects">
<arg type="ay" name="isolate_credential" direction="in"/>
<arg type="t" name="session_id" direction="in"/>
<arg type="t" name="max_object_count" direction="in"/>
<arg type="at" name="object_list" direction="out"/>
<arg type="u" name="result" direction="out">
<annotation name="org.freedesktop.DBus.GLib.ReturnVal" value=""/>
</arg>
</method>
<!-- PKCS #11 v2.20 section 11.7 page 138. -->
<method name="FindObjectsFinal">
<arg type="ay" name="isolate_credential" direction="in"/>
<arg type="t" name="session_id" direction="in"/>
<arg type="u" name="result" direction="out">
<annotation name="org.freedesktop.DBus.GLib.ReturnVal" value=""/>
</arg>
</method>
<!-- PKCS #11 v2.20 section 11.8 page 139. -->
<method name="EncryptInit">
<arg type="ay" name="isolate_credential" direction="in"/>
<arg type="t" name="session_id" direction="in"/>
<arg type="t" name="mechanism_type" direction="in"/>
<arg type="ay" name="mechanism_parameter" direction="in"/>
<arg type="t" name="key_handle" direction="in"/>
<arg type="u" name="result" direction="out">
<annotation name="org.freedesktop.DBus.GLib.ReturnVal" value=""/>
</arg>
</method>
<!-- PKCS #11 v2.20 section 11.8 page 140. -->
<method name="Encrypt">
<arg type="ay" name="isolate_credential" direction="in"/>
<arg type="t" name="session_id" direction="in"/>
<arg type="ay" name="data_in" direction="in"/>
<arg type="t" name="max_out_length" direction="in"/>
<arg type="t" name="actual_out_length" direction="out"/>
<arg type="ay" name="data_out" direction="out"/>
<arg type="u" name="result" direction="out">
<annotation name="org.freedesktop.DBus.GLib.ReturnVal" value=""/>
</arg>
</method>
<!-- PKCS #11 v2.20 section 11.8 page 141. -->
<method name="EncryptUpdate">
<arg type="ay" name="isolate_credential" direction="in"/>
<arg type="t" name="session_id" direction="in"/>
<arg type="ay" name="data_in" direction="in"/>
<arg type="t" name="max_out_length" direction="in"/>
<arg type="t" name="actual_out_length" direction="out"/>
<arg type="ay" name="data_out" direction="out"/>
<arg type="u" name="result" direction="out">
<annotation name="org.freedesktop.DBus.GLib.ReturnVal" value=""/>
</arg>
</method>
<!-- PKCS #11 v2.20 section 11.8 page 141. -->
<method name="EncryptFinal">
<arg type="ay" name="isolate_credential" direction="in"/>
<arg type="t" name="session_id" direction="in"/>
<arg type="t" name="max_out_length" direction="in"/>
<arg type="t" name="actual_out_length" direction="out"/>
<arg type="ay" name="data_out" direction="out"/>
<arg type="u" name="result" direction="out">
<annotation name="org.freedesktop.DBus.GLib.ReturnVal" value=""/>
</arg>
</method>
<!-- PKCS #11 v2.20 section 11.9 page 144. -->
<method name="DecryptInit">
<arg type="ay" name="isolate_credential" direction="in"/>
<arg type="t" name="session_id" direction="in"/>
<arg type="t" name="mechanism_type" direction="in"/>
<arg type="ay" name="mechanism_parameter" direction="in"/>
<arg type="t" name="key_handle" direction="in"/>
<arg type="u" name="result" direction="out">
<annotation name="org.freedesktop.DBus.GLib.ReturnVal" value=""/>
</arg>
</method>
<!-- PKCS #11 v2.20 section 11.9 page 145. -->
<method name="Decrypt">
<arg type="ay" name="isolate_credential" direction="in"/>
<arg type="t" name="session_id" direction="in"/>
<arg type="ay" name="data_in" direction="in"/>
<arg type="t" name="max_out_length" direction="in"/>
<arg type="t" name="actual_out_length" direction="out"/>
<arg type="ay" name="data_out" direction="out"/>
<arg type="u" name="result" direction="out">
<annotation name="org.freedesktop.DBus.GLib.ReturnVal" value=""/>
</arg>
</method>
<!-- PKCS #11 v2.20 section 11.9 page 146. -->
<method name="DecryptUpdate">
<arg type="ay" name="isolate_credential" direction="in"/>
<arg type="t" name="session_id" direction="in"/>
<arg type="ay" name="data_in" direction="in"/>
<arg type="t" name="max_out_length" direction="in"/>
<arg type="t" name="actual_out_length" direction="out"/>
<arg type="ay" name="data_out" direction="out"/>
<arg type="u" name="result" direction="out">
<annotation name="org.freedesktop.DBus.GLib.ReturnVal" value=""/>
</arg>
</method>
<!-- PKCS #11 v2.20 section 11.9 page 146. -->
<method name="DecryptFinal">
<arg type="ay" name="isolate_credential" direction="in"/>
<arg type="t" name="session_id" direction="in"/>
<arg type="t" name="max_out_length" direction="in"/>
<arg type="t" name="actual_out_length" direction="out"/>
<arg type="ay" name="data_out" direction="out"/>
<arg type="u" name="result" direction="out">
<annotation name="org.freedesktop.DBus.GLib.ReturnVal" value=""/>
</arg>
</method>
<!-- PKCS #11 v2.20 section 11.10 page 148. -->
<method name="DigestInit">
<arg type="ay" name="isolate_credential" direction="in"/>
<arg type="t" name="session_id" direction="in"/>
<arg type="t" name="mechanism_type" direction="in"/>
<arg type="ay" name="mechanism_parameter" direction="in"/>
<arg type="u" name="result" direction="out">
<annotation name="org.freedesktop.DBus.GLib.ReturnVal" value=""/>
</arg>
</method>
<!-- PKCS #11 v2.20 section 11.10 page 149. -->
<method name="Digest">
<arg type="ay" name="isolate_credential" direction="in"/>
<arg type="t" name="session_id" direction="in"/>
<arg type="ay" name="data_in" direction="in"/>
<arg type="t" name="max_out_length" direction="in"/>
<arg type="t" name="actual_out_length" direction="out"/>
<arg type="ay" name="digest" direction="out"/>
<arg type="u" name="result" direction="out">
<annotation name="org.freedesktop.DBus.GLib.ReturnVal" value=""/>
</arg>
</method>
<!-- PKCS #11 v2.20 section 11.10 page 150. -->
<method name="DigestUpdate">
<arg type="ay" name="isolate_credential" direction="in"/>
<arg type="t" name="session_id" direction="in"/>
<arg type="ay" name="data_in" direction="in"/>
<arg type="u" name="result" direction="out">
<annotation name="org.freedesktop.DBus.GLib.ReturnVal" value=""/>
</arg>
</method>
<!-- PKCS #11 v2.20 section 11.10 page 150. -->
<method name="DigestKey">
<arg type="ay" name="isolate_credential" direction="in"/>
<arg type="t" name="session_id" direction="in"/>
<arg type="t" name="key_handle" direction="in"/>
<arg type="u" name="result" direction="out">
<annotation name="org.freedesktop.DBus.GLib.ReturnVal" value=""/>
</arg>
</method>
<!-- PKCS #11 v2.20 section 11.10 page 151. -->
<method name="DigestFinal">
<arg type="ay" name="isolate_credential" direction="in"/>
<arg type="t" name="session_id" direction="in"/>
<arg type="t" name="max_out_length" direction="in"/>
<arg type="t" name="actual_out_length" direction="out"/>
<arg type="ay" name="digest" direction="out"/>
<arg type="u" name="result" direction="out">
<annotation name="org.freedesktop.DBus.GLib.ReturnVal" value=""/>
</arg>
</method>
<!-- PKCS #11 v2.20 section 11.11 page 152. -->
<method name="SignInit">
<arg type="ay" name="isolate_credential" direction="in"/>
<arg type="t" name="session_id" direction="in"/>
<arg type="t" name="mechanism_type" direction="in"/>
<arg type="ay" name="mechanism_parameter" direction="in"/>
<arg type="t" name="key_handle" direction="in"/>
<arg type="u" name="result" direction="out">
<annotation name="org.freedesktop.DBus.GLib.ReturnVal" value=""/>
</arg>
</method>
<!-- PKCS #11 v2.20 section 11.11 page 153. -->
<method name="Sign">
<arg type="ay" name="isolate_credential" direction="in"/>
<arg type="t" name="session_id" direction="in"/>
<arg type="ay" name="data" direction="in"/>
<arg type="t" name="max_out_length" direction="in"/>
<arg type="t" name="actual_out_length" direction="out"/>
<arg type="ay" name="signature" direction="out"/>
<arg type="u" name="result" direction="out">
<annotation name="org.freedesktop.DBus.GLib.ReturnVal" value=""/>
</arg>
</method>
<!-- PKCS #11 v2.20 section 11.11 page 154. -->
<method name="SignUpdate">
<arg type="ay" name="isolate_credential" direction="in"/>
<arg type="t" name="session_id" direction="in"/>
<arg type="ay" name="data_part" direction="in"/>
<arg type="u" name="result" direction="out">
<annotation name="org.freedesktop.DBus.GLib.ReturnVal" value=""/>
</arg>
</method>
<!-- PKCS #11 v2.20 section 11.11 page 154. -->
<method name="SignFinal">
<arg type="ay" name="isolate_credential" direction="in"/>
<arg type="t" name="session_id" direction="in"/>
<arg type="t" name="max_out_length" direction="in"/>
<arg type="t" name="actual_out_length" direction="out"/>
<arg type="ay" name="signature" direction="out"/>
<arg type="u" name="result" direction="out">
<annotation name="org.freedesktop.DBus.GLib.ReturnVal" value=""/>
</arg>
</method>
<!-- PKCS #11 v2.20 section 11.11 page 155. -->
<method name="SignRecoverInit">
<arg type="ay" name="isolate_credential" direction="in"/>
<arg type="t" name="session_id" direction="in"/>
<arg type="t" name="mechanism_type" direction="in"/>
<arg type="ay" name="mechanism_parameter" direction="in"/>
<arg type="t" name="key_handle" direction="in"/>
<arg type="u" name="result" direction="out">
<annotation name="org.freedesktop.DBus.GLib.ReturnVal" value=""/>
</arg>
</method>
<!-- PKCS #11 v2.20 section 11.11 page 156. -->
<method name="SignRecover">
<arg type="ay" name="isolate_credential" direction="in"/>
<arg type="t" name="session_id" direction="in"/>
<arg type="ay" name="data" direction="in"/>
<arg type="t" name="max_out_length" direction="in"/>
<arg type="t" name="actual_out_length" direction="out"/>
<arg type="ay" name="signature" direction="out"/>
<arg type="u" name="result" direction="out">
<annotation name="org.freedesktop.DBus.GLib.ReturnVal" value=""/>
</arg>
</method>
<!-- PKCS #11 v2.20 section 11.12 page 157. -->
<method name="VerifyInit">
<arg type="ay" name="isolate_credential" direction="in"/>
<arg type="t" name="session_id" direction="in"/>
<arg type="t" name="mechanism_type" direction="in"/>
<arg type="ay" name="mechanism_parameter" direction="in"/>
<arg type="t" name="key_handle" direction="in"/>
<arg type="u" name="result" direction="out">
<annotation name="org.freedesktop.DBus.GLib.ReturnVal" value=""/>
</arg>
</method>
<!-- PKCS #11 v2.20 section 11.12 page 158. -->
<method name="Verify">
<arg type="ay" name="isolate_credential" direction="in"/>
<arg type="t" name="session_id" direction="in"/>
<arg type="ay" name="data" direction="in"/>
<arg type="ay" name="signature" direction="in"/>
<arg type="u" name="result" direction="out">
<annotation name="org.freedesktop.DBus.GLib.ReturnVal" value=""/>
</arg>
</method>
<!-- PKCS #11 v2.20 section 11.12 page 159. -->
<method name="VerifyUpdate">
<arg type="ay" name="isolate_credential" direction="in"/>
<arg type="t" name="session_id" direction="in"/>
<arg type="ay" name="data_part" direction="in"/>
<arg type="u" name="result" direction="out">
<annotation name="org.freedesktop.DBus.GLib.ReturnVal" value=""/>
</arg>
</method>
<!-- PKCS #11 v2.20 section 11.12 page 159. -->
<method name="VerifyFinal">
<arg type="ay" name="isolate_credential" direction="in"/>
<arg type="t" name="session_id" direction="in"/>
<arg type="ay" name="signature" direction="in"/>
<arg type="u" name="result" direction="out">
<annotation name="org.freedesktop.DBus.GLib.ReturnVal" value=""/>
</arg>
</method>
<!-- PKCS #11 v2.20 section 11.12 page 161. -->
<method name="VerifyRecoverInit">
<arg type="ay" name="isolate_credential" direction="in"/>
<arg type="t" name="session_id" direction="in"/>
<arg type="t" name="mechanism_type" direction="in"/>
<arg type="ay" name="mechanism_parameter" direction="in"/>
<arg type="t" name="key_handle" direction="in"/>
<arg type="u" name="result" direction="out">
<annotation name="org.freedesktop.DBus.GLib.ReturnVal" value=""/>
</arg>
</method>
<!-- PKCS #11 v2.20 section 11.12 page 161. -->
<method name="VerifyRecover">
<arg type="ay" name="isolate_credential" direction="in"/>
<arg type="t" name="session_id" direction="in"/>
<arg type="ay" name="signature" direction="in"/>
<arg type="t" name="max_out_length" direction="in"/>
<arg type="t" name="actual_out_length" direction="out"/>
<arg type="ay" name="data" direction="out"/>
<arg type="u" name="result" direction="out">
<annotation name="org.freedesktop.DBus.GLib.ReturnVal" value=""/>
</arg>
</method>
<!-- PKCS #11 v2.20 section 11.13 page 163. -->
<method name="DigestEncryptUpdate">
<arg type="ay" name="isolate_credential" direction="in"/>
<arg type="t" name="session_id" direction="in"/>
<arg type="ay" name="data_in" direction="in"/>
<arg type="t" name="max_out_length" direction="in"/>
<arg type="t" name="actual_out_length" direction="out"/>
<arg type="ay" name="data_out" direction="out"/>
<arg type="u" name="result" direction="out">
<annotation name="org.freedesktop.DBus.GLib.ReturnVal" value=""/>
</arg>
</method>
<!-- PKCS #11 v2.20 section 11.13 page 165. -->
<method name="DecryptDigestUpdate">
<arg type="ay" name="isolate_credential" direction="in"/>
<arg type="t" name="session_id" direction="in"/>
<arg type="ay" name="data_in" direction="in"/>
<arg type="t" name="max_out_length" direction="in"/>
<arg type="t" name="actual_out_length" direction="out"/>
<arg type="ay" name="data_out" direction="out"/>
<arg type="u" name="result" direction="out">
<annotation name="org.freedesktop.DBus.GLib.ReturnVal" value=""/>
</arg>
</method>
<!-- PKCS #11 v2.20 section 11.13 page 169. -->
<method name="SignEncryptUpdate">
<arg type="ay" name="isolate_credential" direction="in"/>
<arg type="t" name="session_id" direction="in"/>
<arg type="ay" name="data_in" direction="in"/>
<arg type="t" name="max_out_length" direction="in"/>
<arg type="t" name="actual_out_length" direction="out"/>
<arg type="ay" name="data_out" direction="out"/>
<arg type="u" name="result" direction="out">
<annotation name="org.freedesktop.DBus.GLib.ReturnVal" value=""/>
</arg>
</method>
<!-- PKCS #11 v2.20 section 11.13 page 171. -->
<method name="DecryptVerifyUpdate">
<arg type="ay" name="isolate_credential" direction="in"/>
<arg type="t" name="session_id" direction="in"/>
<arg type="ay" name="data_in" direction="in"/>
<arg type="t" name="max_out_length" direction="in"/>
<arg type="t" name="actual_out_length" direction="out"/>
<arg type="ay" name="data_out" direction="out"/>
<arg type="u" name="result" direction="out">
<annotation name="org.freedesktop.DBus.GLib.ReturnVal" value=""/>
</arg>
</method>
<!-- PKCS #11 v2.20 section 11.14 page 175. -->
<method name="GenerateKey">
<arg type="ay" name="isolate_credential" direction="in"/>
<arg type="t" name="session_id" direction="in"/>
<arg type="t" name="mechanism_type" direction="in"/>
<arg type="ay" name="mechanism_parameter" direction="in"/>
<arg type="ay" name="attributes" direction="in"/>
<arg type="t" name="key_handle" direction="out"/>
<arg type="u" name="result" direction="out">
<annotation name="org.freedesktop.DBus.GLib.ReturnVal" value=""/>
</arg>
</method>
<!-- PKCS #11 v2.20 section 11.14 page 176. -->
<method name="GenerateKeyPair">
<arg type="ay" name="isolate_credential" direction="in"/>
<arg type="t" name="session_id" direction="in"/>
<arg type="t" name="mechanism_type" direction="in"/>
<arg type="ay" name="mechanism_parameter" direction="in"/>
<arg type="ay" name="public_attributes" direction="in"/>
<arg type="ay" name="private_attributes" direction="in"/>
<arg type="t" name="public_key_handle" direction="out"/>
<arg type="t" name="private_key_handle" direction="out"/>
<arg type="u" name="result" direction="out">
<annotation name="org.freedesktop.DBus.GLib.ReturnVal" value=""/>
</arg>
</method>
<!-- PKCS #11 v2.20 section 11.14 page 178. -->
<method name="WrapKey">
<arg type="ay" name="isolate_credential" direction="in"/>
<arg type="t" name="session_id" direction="in"/>
<arg type="t" name="mechanism_type" direction="in"/>
<arg type="ay" name="mechanism_parameter" direction="in"/>
<arg type="t" name="wrapping_key_handle" direction="in"/>
<arg type="t" name="key_handle" direction="in"/>
<arg type="t" name="max_out_length" direction="in"/>
<arg type="t" name="actual_out_length" direction="out"/>
<arg type="ay" name="wrapped_key" direction="out"/>
<arg type="u" name="result" direction="out">
<annotation name="org.freedesktop.DBus.GLib.ReturnVal" value=""/>
</arg>
</method>
<!-- PKCS #11 v2.20 section 11.14 page 180. -->
<method name="UnwrapKey">
<arg type="ay" name="isolate_credential" direction="in"/>
<arg type="t" name="session_id" direction="in"/>
<arg type="t" name="mechanism_type" direction="in"/>
<arg type="ay" name="mechanism_parameter" direction="in"/>
<arg type="t" name="wrapping_key_handle" direction="in"/>
<arg type="ay" name="wrapped_key" direction="in"/>
<arg type="ay" name="attributes" direction="in"/>
<arg type="t" name="key_handle" direction="out"/>
<arg type="u" name="result" direction="out">
<annotation name="org.freedesktop.DBus.GLib.ReturnVal" value=""/>
</arg>
</method>
<!-- PKCS #11 v2.20 section 11.14 page 182. -->
<method name="DeriveKey">
<arg type="ay" name="isolate_credential" direction="in"/>
<arg type="t" name="session_id" direction="in"/>
<arg type="t" name="mechanism_type" direction="in"/>
<arg type="ay" name="mechanism_parameter" direction="in"/>
<arg type="t" name="base_key_handle" direction="in"/>
<arg type="ay" name="attributes" direction="in"/>
<arg type="t" name="key_handle" direction="out"/>
<arg type="u" name="result" direction="out">
<annotation name="org.freedesktop.DBus.GLib.ReturnVal" value=""/>
</arg>
</method>
<!-- PKCS #11 v2.20 section 11.15 page 184. -->
<method name="SeedRandom">
<arg type="ay" name="isolate_credential" direction="in"/>
<arg type="t" name="session_id" direction="in"/>
<arg type="ay" name="seed" direction="in"/>
<arg type="u" name="result" direction="out">
<annotation name="org.freedesktop.DBus.GLib.ReturnVal" value=""/>
</arg>
</method>
<!-- PKCS #11 v2.20 section 11.15 page 184. -->
<method name="GenerateRandom">
<arg type="ay" name="isolate_credential" direction="in"/>
<arg type="t" name="session_id" direction="in"/>
<arg type="t" name="num_bytes" direction="in"/>
<arg type="ay" name="random_data" direction="out"/>
<arg type="u" name="result" direction="out">
<annotation name="org.freedesktop.DBus.GLib.ReturnVal" value=""/>
</arg>
</method>
</interface>
</node>