From 2048ede8bc3969d8e90e42856277988f158b2275 Mon Sep 17 00:00:00 2001 From: Will Thompson Date: Wed, 23 Nov 2011 16:05:15 +0000 Subject: Update the rest of the spec to 0.25.1 --- glib/spec/Call_Content_Interface_Video_Control.xml | 3 +- glib/spec/Channel_Interface_Picture.xml | 2 +- glib/spec/Channel_Interface_Tube.xml | 53 +++++++++++++++++----- glib/spec/Channel_Type_DBus_Tube.xml | 12 ++++- glib/spec/Connection_Interface_Addressing.xml | 3 +- glib/spec/Protocol_Interface_Addressing.xml | 7 +-- glib/spec/all.xml | 3 +- 7 files changed, 63 insertions(+), 20 deletions(-) diff --git a/glib/spec/Call_Content_Interface_Video_Control.xml b/glib/spec/Call_Content_Interface_Video_Control.xml index a300f3b5f..086d47581 100644 --- a/glib/spec/Call_Content_Interface_Video_Control.xml +++ b/glib/spec/Call_Content_Interface_Video_Control.xml @@ -1,8 +1,7 @@ - Copyright © 2009-2010 Collabora Ltd. - Copyright © 2009-2010 Nokia Corporation + Copyright © 2011 Collabora Ltd.

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/glib/spec/Channel_Interface_Picture.xml b/glib/spec/Channel_Interface_Picture.xml index a1603b113..fb2fcf3d2 100644 --- a/glib/spec/Channel_Interface_Picture.xml +++ b/glib/spec/Channel_Interface_Picture.xml @@ -2,7 +2,7 @@ - Copyright © 2010–2011 Collabora Ltd. + Copyright © 2011 Collabora Ltd.

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/glib/spec/Channel_Interface_Tube.xml b/glib/spec/Channel_Interface_Tube.xml index 858a15dd9..f31ab2138 100644 --- a/glib/spec/Channel_Interface_Tube.xml +++ b/glib/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"> - 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. +

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.

+ +

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 ANONYMOUS + authentication mechanism MAY be enabled.

- May only be used on IP sockets. The associated variant must contain + May only be used on IP sockets, and only for Stream tubes. + + 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. -

May only be used on UNIX sockets. +

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.

+ +

For StreamTube 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.

+ 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.)

+ +

For DBusTube 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).

-

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.

+

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.

-

The associated variant must be ignored.

+

In either tube type, the associated variant must be ignored.

diff --git a/glib/spec/Channel_Type_DBus_Tube.xml b/glib/spec/Channel_Type_DBus_Tube.xml index 961576319..74e659514 100644 --- a/glib/spec/Channel_Type_DBus_Tube.xml +++ b/glib/spec/Channel_Type_DBus_Tube.xml @@ -174,7 +174,17 @@ Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.

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.

+ Socket_Access_Control_Credentials can be used with D-Bus tubes. + Using Socket_Access_Control_Credentials is recommended.

+ + +

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.

+

When requesting a channel with Connection.Interface.Requests.CreateChannel, diff --git a/glib/spec/Connection_Interface_Addressing.xml b/glib/spec/Connection_Interface_Addressing.xml index db8155f23..ef9df3eee 100644 --- a/glib/spec/Connection_Interface_Addressing.xml +++ b/glib/spec/Connection_Interface_Addressing.xml @@ -21,6 +21,7 @@ (as draft) + Both methods now return two dictionaries.

This interface deals with the multiple address types that can refer to the same contact, such as vCard fields and URIs.

@@ -224,7 +225,7 @@ A map from URIs/vCard addresses to the corresponding handle. - + diff --git a/glib/spec/Protocol_Interface_Addressing.xml b/glib/spec/Protocol_Interface_Addressing.xml index 0bad92a6d..0c62e1bd9 100644 --- a/glib/spec/Protocol_Interface_Addressing.xml +++ b/glib/spec/Protocol_Interface_Addressing.xml @@ -22,8 +22,9 @@ - (as stable API) - (renamed NormalizeURI) + (as stable API). From the draft, + NormalizeURI was renamed to NormalizeContactURI, clarifying that + it removes any actions from the URI.

An interface for protocols that support multiple forms of addressing contacts, for example through vCard addresses and URIs.

@@ -242,7 +243,7 @@ AddressableURISchemes=tel;sip; - (renamed from NormalizeURI) + (renamed from NormalizeURI)

Attempt to normalize the given contact URI. Where possible, this SHOULD return an address that would appear in the diff --git a/glib/spec/all.xml b/glib/spec/all.xml index 300f915b4..7e8c83423 100644 --- a/glib/spec/all.xml +++ b/glib/spec/all.xml @@ -3,7 +3,7 @@ xmlns:xi="http://www.w3.org/2001/XInclude"> Telepathy D-Bus Interface Specification -0.25.0 +0.25.1 Copyright © 2005-2011 Collabora Limited Copyright © 2005-2011 Nokia Corporation @@ -242,6 +242,7 @@ Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. + -- cgit v1.2.3