summaryrefslogtreecommitdiff
path: root/spec/Channel_Type_Server_TLS_Connection.xml
blob: 1f3348e12a51edc805a93ffae98446750cbe9f15 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
<?xml version="1.0" ?>
<node name="/Channel_Type_Server_TLS_Connection"
    xmlns:tp="http://telepathy.freedesktop.org/wiki/DbusSpec#extensions-v0">
  <tp:copyright> Copyright © 2010 Collabora Limited </tp:copyright>
  <tp:license>
    This library is free software; you can redistribute it and/or
    modify it under the terms of the GNU Lesser General Public
    License as published by the Free Software Foundation; either
    version 2.1 of the License, or (at your option) any later version.

    This library is distributed in the hope that it will be useful,
    but WITHOUT ANY WARRANTY; without even the implied warranty of
    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
    Lesser General Public License for more details.

    You should have received a copy of the GNU Lesser General Public
    License along with this library; if not, write to the Free Software
    Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
  </tp:license>

  <interface name="org.freedesktop.Telepathy.Channel.Type.ServerTLSConnection">
    <tp:added version="0.19.13">(as stable API)</tp:added>

    <tp:requires interface="org.freedesktop.Telepathy.Channel"/>

    <tp:docstring xmlns="http://www.w3.org/1999/xhtml">
      <p>A channel type that carries a TLS certificate between a server
      and a client connecting to it.</p>
      <p>Channels of this kind always have <tp:dbus-ref
      namespace="org.freedesktop.Telepathy.Channel">Requested</tp:dbus-ref> = False,
      <tp:dbus-ref namespace="org.freedesktop.Telepathy.Channel">TargetHandleType</tp:dbus-ref>
      = None and <tp:dbus-ref namespace="org.freedesktop.Telepathy.Channel">TargetHandle</tp:dbus-ref>
      = 0, and cannot be requested with methods such as <tp:dbus-ref
      namespace="org.freedesktop.Telepathy.Connection.Interface.Requests">CreateChannel</tp:dbus-ref>.
      Also, they SHOULD be dispatched while the
      <tp:dbus-ref namespace="org.freedesktop.Telepathy">Connection</tp:dbus-ref>
      owning them is in the CONNECTING state.</p>
      <p>In this case, handlers SHOULD accept or reject the certificate, using
      the relevant methods on the provided object, or MAY just <tp:dbus-ref
      namespace="org.freedesktop.Telepathy.Channel">Close</tp:dbus-ref> the channel before doing so, to fall
      back to a non-interactive verification process done inside the CM.</p>
      <p>For example, channels of this kind can pop up while a client is
      connecting to an XMPP server.</p>
    </tp:docstring>

    <property name="ServerCertificate" type="o" access="read"
              tp:name-for-bindings="Server_Certificate">
      <tp:docstring>
        <p>A <tp:dbus-ref
        namespace="org.freedesktop.Telepathy.Authentication">TLSCertificate</tp:dbus-ref>
        containing the certificate chain as sent by the server,
        and other relevant information.</p>
        <p>This property is immutable.</p>
      </tp:docstring>
    </property>

    <property name="Hostname" type="s" access="read"
              tp:name-for-bindings="Hostname">
      <tp:added version="0.19.12"/>
      <tp:docstring>
        The hostname of the server we expect <tp:member-ref>ServerCertificate</tp:member-ref>
        to certify; clients SHOULD verify <tp:member-ref>ServerCertificate</tp:member-ref> against
	this hostname when checking its validity.
      </tp:docstring>
    </property>

  </interface>
</node>
<!-- vim:set sw=2 sts=2 et ft=xml: -->