From 48d3249342e77e0d6f4291d451157200cd75e5a8 Mon Sep 17 00:00:00 2001 From: Guillaume Desmottes Date: Thu, 22 Jan 2009 10:38:27 +0000 Subject: remove Channel_Type_File_Transfer from extensions --- extensions/Channel_Type_File_Transfer.xml | 513 ------------------------------ extensions/Makefile.am | 1 - extensions/channel.xml | 1 - 3 files changed, 515 deletions(-) delete mode 100644 extensions/Channel_Type_File_Transfer.xml (limited to 'extensions') diff --git a/extensions/Channel_Type_File_Transfer.xml b/extensions/Channel_Type_File_Transfer.xml deleted file mode 100644 index a2432f4b..00000000 --- a/extensions/Channel_Type_File_Transfer.xml +++ /dev/null @@ -1,513 +0,0 @@ - - - - Copyright (C) 2008 Collabora Limited - - -

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 -Library 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.

-
- - - -

A channel type for transferring files. The - transmission of data between contacts is achieved by reading from - or writing to a socket. The type of the socket (local Unix, IPv4, - etc.) is decided on when the file transfer is offered or accepted.

- -

A socket approach is used to make the transfer less dependent on both - client and connection manager knowing the same protocols. As an example, - when browsing an SMB share in a file manager, one selects "Send file" - and chooses a contact. Instead of passing a URL which would then require - the connection manager to connect to the SMB share itself, the client - passes a stream from which the connection manager reads, requiring no - further connection to the share. It also allows connection managers to - be more restricted in their access to the system, allowing tighter - security policies with eg SELinux, or more flexible deployments which - cross user or system boundaries.

- -

The Telepathy client should connect to the socket or address that - the connection manager has set up and provided back to the clients - through the two methods.

- -
  • In order to send a file, one should request a FileTransfer - channel for a contact, including at least the mandatory properties - (Filename, - Size and ContentType). - Then, one should - call ProvideFile to configure the socket that - will be used to transfer the file.
  • - -
  • In order to receive an incoming file transfer, one should call - AcceptFile and then wait until the state - changes to Open. When the receiver wants to resume a transfer, the Offset - argument should be should be set to a non-zero value when calling - AcceptFile.
  • - -
  • Once the offset has been negotiated, the - InitialOffsetDefined signal - is emitted and the InitialOffset property - is defined. The InitialOffsetDefined - signal is emitted before channel becomes Open. - The receiver MUST check the value of - InitialOffset for a difference in offset - from the requested value in AcceptFile.
  • - -
  • When the state changes to Open, Clients can start the transfer of the - file using the offset previously announced. -
- -

If something goes wrong with the transfer, - Channel.Close - should be called on the channel.

- -

The File channel type may be requested for handles of type - HANDLE_TYPE_CONTACT. If the channel is requested for any other - handle type then the behaviour is undefined.

-
- - - -

The state of the file transfer as described by the - File_Transfer_State enum.

-
-
- - - -

The file's MIME type. This cannot change once the channel has - been created.

- -

This property is mandatory when requesting the channel with the - Connection.Interface.Requests.CreateChannel - method. Protocols which do not have a content-type property with file - transfers should set this value to application/octet-stream.

-
-
- - - -

The name of the file on the sender's side. This is therefore given - as a suggested filename for the receiver. This cannot change - once the channel has been created.

- -

This property should be the basename of the file being sent. For example, - if the sender sends the file /home/user/monkey.pdf then this property should - be set to monkey.pdf.

- -

This property is mandatory when requesting the channel with the - Connection.Interface.Requests.CreateChannel - method. This property cannot be empty and MUST be set to a sensible value.

-
-
- - - -

The size of the file. If this property is set, then the file - transfer is guaranteed to be this size. This cannot change once - the channel has been created.

- -

When you are creating a channel with this property, its value - MUST be accurate and in bytes. However, when receiving a file, this - property still MUST be in bytes but might not be entirely accurate - to the byte.

- -

This property is mandatory when requesting the channel with the - Connection.Interface.Requests.CreateChannel - method. If this information isn't provided in the protocol, connection managers MUST set it - to UINT64_MAX.

-
-
- - - -

The type of the ContentHash property.

- -

This property is optional when requesting the channel with the - Connection.Interface.Requests.CreateChannel - method. However, if you wish to include the ContentHash - property you MUST also include this property. If you omit this property from a - Connection.Interface.Requests.CreateChannel - method call then its value will be assumed to be File_Hash_Type_None.

-
-
- - - -

Hash of the contents of the file transfer, of type described - in the value of the ContentHashType - property.

- -

This property is optional when requesting the channel with the - Connection.Interface.Requests.CreateChannel - method. Its value MUST correspond to the appropriate type of the - ContentHashType property. If the - ContentHashType property is not set, or set to File_Hash_Type_None, - then this property will not even be looked at.

-
-
- - - -

Description of the file transfer. This cannot change once the - channel has been created.

- -

This property is optional when requesting the channel with the - Connection.Interface.Requests.CreateChannel - method. If this property was not provided by the remote party, connection managers MUST set it to - the empty string.

-
-
- - - -

The last modification time of the file being transferred. This - cannot change once the channel has been created

- -

This property is optional when requesting the channel with the - Connection.Interface.Requests.CreateChannel - method.

-
-
- - - -

A mapping from address types (members of Socket_Address_Type) to - arrays of access-control type (members of Socket_Access_Control) - that the connection manager supports for sockets with that - address type. For simplicity, if a CM supports offering a - particular type of file transfer, it is assumed to support accepting - it. Connection Managers MUST support at least Socket_Address_Type_IPv4.

- -

A typical value for a host without IPv6 support:

- -
-          {
-            Socket_Address_Type_IPv4:
-              [Socket_Access_Control_Localhost, Socket_Access_Control_Port,
-               Socket_Access_Control_Netmask],
-            Socket_Address_Type_Unix:
-              [Socket_Access_Control_Localhost, Socket_Access_Control_Credentials]
-          }
-        
-
-
- - - -

The number of bytes that have been transferred at the time of - requesting the property. This will be updated as the file transfer - continues.

-
-
- - - -

The offset in bytes from where the file should be sent. This MUST - be respected by both the receiver and the sender after the state - becomes Open, but before any data is sent or received. Until the - InitialOffsetDefined signal - is emitted, this property is undefined.

- -

Before setting the State property to - Open, the connection manager MUST set the InitialOffset property, - possibly to 0.

- -

This property MUST NOT change after the state of the transfer has - changed to Open.

-
-
- - - - - An invalid state type used as a null value. This value MUST NOT - appear in the State property. - - - - - The file transfer is waiting to be accepted/closed by the receiver. - The receiver has to call AcceptFile, - then wait for the state to change to Open and check the offset value. - - - - - The receiver has accepted the transfer. The sender now has to - call ProvideFile to actually start the transfer. - The receiver should now wait for the state to change to Open - and check the offset value. - - - - - The file transfer is open for traffic. - - - - - The file transfer has been completed successfully. - - - - - The file transfer has been cancelled. - - - - - - - - No reason was specified. - - - - - The change in state was requested. - - - - - The file transfer was cancelled by the local user. - - - - - The file transfer was cancelled by the remote user. - - - - - The file transfer was cancelled because of a local error. - - - - - The file transfer was cancelled because of a remote error. - - - - - - - - No hash. - - - - - MD5 digest as a string of 32 ASCII hex digits. - - - - - SHA1 digest as a string of ASCII hex digits. - - - - - SHA256 digest as a string of ASCII hex digits. - - - - - - - Accept a file transfer that's in the Pending state. The file - transfer's state becomes Accepted after this method is called. - At this point the client can connect to the socket. CM MUST emit - InitialOffsetDefined and change - the state to Open before writing to the socket. - Then InitialOffset should be respected in case - its value differs from the offset that was specified as an argument - to AcceptFile. - - - - The type of address the connection manager should listen on. - - - - - The type of access control the connection manager should apply to - the socket. - - - - - A parameter for the access control type, to be interpreted as - specified in the documentation for the Socket_Access_Control enum. - - - - - The desired offset in bytes where the file transfer should start. - The offset is taken from the beginning of the file. Specifying an - offset of zero will start the transfer from the beginning of the - file. The offset that is actually given in the - InitialOffset property can differ - from this argument where the requested offset is not supported. - (For example, some protocols do not support offsets at all so - the InitialOffset property will always be 0.) - - - - - The address on which the connection manager will listen for - connections for this file transfer. - - - - - - - The given address type or access-control mechanism is not supported. - - - - - - Your address type, access control, access control parameter, - offset, or a combination of all four is invalid. - - - - The file transfer is not in the Pending state, there isn't - or there is a local error with acquiring a socket. - - - - - - - - Provide the file for an outgoing file transfer which has been offered. - Opens a socket that the client can use to provide a file to the connection manager. - The channel MUST have been requested, and will change state - to Open when this method is called if its state was Accepted. - - - - The type of address the connection manager should listen on. - - - - - The type of access control the connection manager should apply to - the socket. - - - - - A parameter for the access control type, to be interpreted as - specified in the documentation for the Socket_Access_Control enum. - - - - - The address on which the connection manager will listen for - connections for this file transfer. - - - - - - - The given address type or access-control mechanism is not supported. - - - - - Your address type, access control, access control parameter, or - a combination of all three is invalid. - - - - Channel is not an outgoing transfer, ProvideFile has already been called, - or there was a local error acquiring the socket. - - - - - - - - Emitted when the state of a file transfer changes. - - - - The new state of the file transfer; see the File_Transfer_State enumeration. - - - - - The reason for the state change; see the File_Transfer_State_Change_Reason - enumeration. - The value will always be File_Transfer_State_Change_Reason_None, except - when changing state to cancelled. - - - - - - - Emitted when the number of transferred bytes changes. This will not be - signalled with every single byte change. Instead, the most frequent - this signal will be emitted is once a second. This should be - sufficient, and the TransferredBytes - property SHOULD NOT be polled. - - - - The number of already transferred bytes. - - - - - - - Emitted when the value of the InitialOffset - property has been negotiated. This signal MUST be emitted before the channel - becomes Open and clients have to use this offset when transferring the - file. - - - - The value of the InitialOffset property. - - - - -
- -
- diff --git a/extensions/Makefile.am b/extensions/Makefile.am index b3bd24b2..5142284e 100644 --- a/extensions/Makefile.am +++ b/extensions/Makefile.am @@ -1,7 +1,6 @@ tools_dir = $(top_srcdir)/tools EXTRA_DIST = \ - Channel_Type_File_Transfer.xml \ Channel_Type_Stream_Tube.xml \ Channel_Type_DBus_Tube.xml \ Channel_Interface_Tube.xml \ diff --git a/extensions/channel.xml b/extensions/channel.xml index 14962f0d..9cc19cf3 100644 --- a/extensions/channel.xml +++ b/extensions/channel.xml @@ -22,7 +22,6 @@ License along with this library; if not, write to the Free Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA

- -- cgit v1.2.1