diff options
Diffstat (limited to 'spec')
-rw-r--r-- | spec/Call_Content_Interface_Video_Control.xml | 3 | ||||
-rw-r--r-- | spec/Channel_Interface_Picture.xml | 2 | ||||
-rw-r--r-- | spec/Channel_Interface_Tube.xml | 53 | ||||
-rw-r--r-- | spec/Channel_Type_DBus_Tube.xml | 12 | ||||
-rw-r--r-- | spec/Connection_Interface_Addressing.xml | 3 | ||||
-rw-r--r-- | spec/Protocol_Interface_Addressing.xml | 7 | ||||
-rw-r--r-- | spec/all.xml | 3 |
7 files changed, 63 insertions, 20 deletions
diff --git a/spec/Call_Content_Interface_Video_Control.xml b/spec/Call_Content_Interface_Video_Control.xml index a300f3b5f..086d47581 100644 --- a/spec/Call_Content_Interface_Video_Control.xml +++ b/spec/Call_Content_Interface_Video_Control.xml @@ -1,8 +1,7 @@ <!DOCTYPE node PUBLIC "-//freedesktop//DTD D-BUS Object Introspection 1.0//EN" "http://www.freedesktop.org/standards/dbus/1.0/introspect.dtd"> <node name="/Call_Content_Interface_Video_Control" xmlns:tp="http://telepathy.freedesktop.org/wiki/DbusSpec#extensions-v0"> - <tp:copyright>Copyright © 2009-2010 Collabora Ltd.</tp:copyright> - <tp:copyright>Copyright © 2009-2010 Nokia Corporation</tp:copyright> + <tp:copyright>Copyright © 2011 Collabora Ltd.</tp:copyright> <tp:license xmlns="http://www.w3.org/1999/xhtml"> <p>This library is free software; you can redistribute it and/or modify it under the terms of the GNU Lesser General Public diff --git a/spec/Channel_Interface_Picture.xml b/spec/Channel_Interface_Picture.xml index a1603b113..fb2fcf3d2 100644 --- a/spec/Channel_Interface_Picture.xml +++ b/spec/Channel_Interface_Picture.xml @@ -2,7 +2,7 @@ <node name="/Channel_Interface_Picture" xmlns:tp="http://telepathy.freedesktop.org/wiki/DbusSpec#extensions-v0"> - <tp:copyright>Copyright © 2010–2011 Collabora Ltd.</tp:copyright> + <tp:copyright>Copyright © 2011 Collabora Ltd.</tp:copyright> <tp:license xmlns="http://www.w3.org/1999/xhtml"> <p>This library is free software; you can redistribute it and/or modify it under the terms of the GNU Lesser General Public diff --git a/spec/Channel_Interface_Tube.xml b/spec/Channel_Interface_Tube.xml index 858a15dd9..f31ab2138 100644 --- a/spec/Channel_Interface_Tube.xml +++ b/spec/Channel_Interface_Tube.xml @@ -204,15 +204,24 @@ Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. array-name="Socket_Access_Control_List"> <tp:enumvalue suffix="Localhost" value="0"> <tp:docstring> - The IP or Unix socket can be accessed by any local user (e.g. - a Unix socket that accepts all local connections, or an IP socket - listening on 127.0.0.1 (or ::1) or rejecting connections not from - that address). The associated variant must be ignored. + <p>The IP or Unix socket can be accessed by any local user (e.g. + a Unix socket that accepts all local connections, or an IP socket + listening on 127.0.0.1 (or ::1) or rejecting connections not from + that address). The associated variant must be ignored.</p> + + <p>For a D-Bus tube, this means that the "same user" access + control typically provided by default in D-Bus implementations + SHOULD be disabled. If the socket is only available to local users + (e.g. a Unix socket, an IPv4 socket bound to 127.0.0.1, or an + IPv6 socket bound to ::1), the <code>ANONYMOUS</code> + authentication mechanism MAY be enabled.</p> </tp:docstring> </tp:enumvalue> <tp:enumvalue suffix="Port" value="1"> <tp:docstring> - May only be used on IP sockets. The associated variant must contain + May only be used on IP sockets, and only for Stream tubes. + <!-- ... and maybe Datagram tubes, one day... --> + The associated variant must contain a struct Socket_Address_IPv4 (or Socket_Address_IPv6) containing the string form of an IP address of the appropriate version, and a port number. The socket can only be accessed if the @@ -235,19 +244,41 @@ Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. </tp:enumvalue> <tp:enumvalue suffix="Credentials" value="3"> <tp:docstring xmlns="http://www.w3.org/1999/xhtml"> - <p>May only be used on UNIX sockets. + <p>The high-level meaning of this access control type is that + only the same user (e.g. same numeric Unix uid) is allowed to + interact with the tube. Exactly how this is achieved varies by + channel type.</p> + + <p>For <tp:dbus-ref namespace="org.freedesktop.Telepathy.Channel.Type" + >StreamTube</tp:dbus-ref> channels, this access control type + may only be used on UNIX sockets. The connecting process must send a byte when it first connects, which is not considered to be part of the data stream. If the operating system uses sendmsg() with SCM_CREDS or SCM_CREDENTIALS to pass credentials over sockets, the connecting process must do so if possible; if not, it must still send the - byte.</p> + byte, without any attached credentials. (This mechanism is + very similar to the first byte of a D-Bus connection, except that + in D-Bus the byte is always zero, whereas in Tubes it can be + nonzero.)</p> + + <p>For <tp:dbus-ref namespace="org.freedesktop.Telepathy.Channel.Type" + >DBusTube</tp:dbus-ref> channels, this access control type + may be used on any type of socket, and there is no extra byte + added by Telepathy at the beginning of the stream: all bytes in + the stream are part of the D-Bus tube connection. The connecting + process should prove its identity via any of the SASL + authentication mechanisms usually used for D-Bus (in typical + D-Bus implementations this involves either sending and receiving + credentials as above, or demonstrating the ability to write to a + file in the user's home directory).</p> - <p>The listening process will disconnect the connection unless it - can determine by OS-specific means that the connecting process - has the same user ID as the listening process.</p> + <p>In either case, the listening process will disconnect the + connection unless it can determine by OS-specific means that + the connecting process has the same user ID as the listening + process.</p> - <p>The associated variant must be ignored.</p> + <p>In either tube type, the associated variant must be ignored.</p> </tp:docstring> </tp:enumvalue> </tp:enum> diff --git a/spec/Channel_Type_DBus_Tube.xml b/spec/Channel_Type_DBus_Tube.xml index 961576319..74e659514 100644 --- a/spec/Channel_Type_DBus_Tube.xml +++ b/spec/Channel_Type_DBus_Tube.xml @@ -174,7 +174,17 @@ Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. <tp:docstring xmlns="http://www.w3.org/1999/xhtml"> <p>A list of the access control types that are supported with this channel. Note that only Socket_Access_Control_Localhost and - Socket_Access_Control_Credentials can be used with D-Bus tubes.</p> + Socket_Access_Control_Credentials can be used with D-Bus tubes. + Using Socket_Access_Control_Credentials is recommended.</p> + + <tp:rationale> + <p>Socket_Access_Control_Credentials is easy to implement for a + D-Bus tube, because typical D-Bus library implementations like + libdbus and GDBus already have to support it to be able to + connect to the system or session bus, and usually enable it + by default; so there's typically no good reason to relax + access control to Localhost.</p> + </tp:rationale> <p>When requesting a channel with <tp:dbus-ref namespace="org.freedesktop.Telepathy">Connection.Interface.Requests.CreateChannel</tp:dbus-ref>, diff --git a/spec/Connection_Interface_Addressing.xml b/spec/Connection_Interface_Addressing.xml index db8155f23..ef9df3eee 100644 --- a/spec/Connection_Interface_Addressing.xml +++ b/spec/Connection_Interface_Addressing.xml @@ -21,6 +21,7 @@ <tp:requires interface="org.freedesktop.Telepathy.Connection"/> <tp:requires interface="org.freedesktop.Telepathy.Connection.Interface.Contacts"/> <tp:added version="0.19.12">(as draft)</tp:added> + <tp:changed version="0.25.1">Both methods now return two dictionaries.</tp:changed> <tp:docstring xmlns="http://www.w3.org/1999/xhtml"> <p>This interface deals with the multiple address types that can refer to the same contact, such as vCard fields and URIs.</p> @@ -224,7 +225,7 @@ <tp:docstring> A map from URIs/vCard addresses to the corresponding handle. </tp:docstring> - <tp:added version="0.25.UNRELEASED"/> + <tp:added version="0.25.1"/> <tp:member type="s" name="Requested_String"> <tp:docstring> diff --git a/spec/Protocol_Interface_Addressing.xml b/spec/Protocol_Interface_Addressing.xml index 0bad92a6d..0c62e1bd9 100644 --- a/spec/Protocol_Interface_Addressing.xml +++ b/spec/Protocol_Interface_Addressing.xml @@ -22,8 +22,9 @@ <interface name="org.freedesktop.Telepathy.Protocol.Interface.Addressing"> - <tp:added version="0.25.UNRELEASED">(as stable API)</tp:added> - <tp:changed version="0.25.UNRELEASED">(renamed NormalizeURI)</tp:changed> + <tp:added version="0.25.1">(as stable API). From the draft, + NormalizeURI was renamed to NormalizeContactURI, clarifying that + it removes any actions from the URI.</tp:added> <tp:docstring xmlns="http://www.w3.org/1999/xhtml"> <p>An interface for protocols that support multiple forms of addressing contacts, for example through vCard addresses and URIs.</p> @@ -242,7 +243,7 @@ AddressableURISchemes=tel;sip; <method name="NormalizeContactURI" tp:name-for-bindings="Normalize_Contact_URI"> - <tp:added version="0.25.UNRELEASED">(renamed from NormalizeURI)</tp:added> + <tp:added version="0.25.1">(renamed from NormalizeURI)</tp:added> <tp:docstring xmlns="http://www.w3.org/1999/xhtml"> <p>Attempt to normalize the given contact URI. Where possible, this SHOULD return an address that would appear in the diff --git a/spec/all.xml b/spec/all.xml index 300f915b4..7e8c83423 100644 --- a/spec/all.xml +++ b/spec/all.xml @@ -3,7 +3,7 @@ xmlns:xi="http://www.w3.org/2001/XInclude"> <tp:title>Telepathy D-Bus Interface Specification</tp:title> -<tp:version>0.25.0</tp:version> +<tp:version>0.25.1</tp:version> <tp:copyright>Copyright © 2005-2011 Collabora Limited</tp:copyright> <tp:copyright>Copyright © 2005-2011 Nokia Corporation</tp:copyright> @@ -242,6 +242,7 @@ Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.</ <xi:include href="Call_Content_Interface_Media.xml"/> <xi:include href="Call_Interface_Mute.xml"/> <xi:include href="Call_Content_Interface_Video_Control.xml"/> + <xi:include href="Call_Content_Interface_Audio_Control.xml"/> <xi:include href="Call_Content_Media_Description.xml"/> <xi:include href="Call_Content_Media_Description_Interface_RTP_Header_Extensions.xml"/> <xi:include href="Call_Content_Media_Description_Interface_RTCP_Feedback.xml"/> |