SSL support functions

SSL support functions — Functions to send and receive encrypted data over a socket.

Functions

Types and Values

typedef GnomeVFSSSL

Description

Functions

gnome_vfs_ssl_enabled ()

gboolean
gnome_vfs_ssl_enabled (void);

Checks whether gnome-vfs was compiled with SSL support.

Returns

TRUE if gnome-vfs was compiled with SSL support, otherwise FALSE.


gnome_vfs_ssl_create ()

GnomeVFSResult
gnome_vfs_ssl_create (GnomeVFSSSL **handle_return,
                      const char *host,
                      unsigned int port,
                      GnomeVFSCancellation *cancellation);

Creates an SSL socket connection at handle_return to host using port port .

Parameters

handle_return

pointer to a GnomeVFSSSL struct, which will contain an allocated GnomeVFSSSL object on return.

 

host

string indicating the hostname to establish an SSL connection with.

 

port

port number to connect to.

 

cancellation

handle allowing cancellation of the operation.

 

Returns

GnomeVFSResult indicating the success of the operation.


gnome_vfs_ssl_create_from_fd ()

GnomeVFSResult
gnome_vfs_ssl_create_from_fd (GnomeVFSSSL **handle_return,
                              gint fd,
                              GnomeVFSCancellation *cancellation);

Try to establish an SSL connection over the file descriptor fd .

Parameters

handle_return

pointer to a GnomeVFSSSL struct, which will contain an allocated GnomeVFSSSL object on return.

 

fd

file descriptior to try and establish an SSL connection over.

 

cancellation

handle allowing cancellation of the operation.

 

Returns

a GnomeVFSResult indicating the success of the operation.


gnome_vfs_ssl_read ()

GnomeVFSResult
gnome_vfs_ssl_read (GnomeVFSSSL *ssl,
                    gpointer buffer,
                    GnomeVFSFileSize bytes,
                    GnomeVFSFileSize *bytes_read,
                    GnomeVFSCancellation *cancellation);

Read bytes bytes of data from the SSL socket ssl into buffer .

Parameters

ssl

SSL socket to read data from.

 

buffer

allocated buffer of at least bytes bytes to write into.

 

bytes

number of bytes to read from ssl into buffer .

 

bytes_read

pointer to a GnomeVFSFileSize, will contain the number of bytes actually read from the socket ssl on return.

 

cancellation

handle allowing cancellation of the operation.

 

Returns

GnomeVFSResult indicating the success of the operation.


gnome_vfs_ssl_write ()

GnomeVFSResult
gnome_vfs_ssl_write (GnomeVFSSSL *ssl,
                     gconstpointer buffer,
                     GnomeVFSFileSize bytes,
                     GnomeVFSFileSize *bytes_written,
                     GnomeVFSCancellation *cancellation);

Write bytes bytes of data from buffer to ssl .

Parameters

ssl

SSL socket to write data to.

 

buffer

data to write to the socket.

 

bytes

number of bytes to write from buffer to ssl .

 

bytes_written

pointer to a GnomeVFSFileSize, will contain the number of bytes actually written to the socket on return.

 

cancellation

handle allowing cancellation of the operation.

 

Returns

GnomeVFSResult indicating the success of the operation.


gnome_vfs_ssl_destroy ()

void
gnome_vfs_ssl_destroy (GnomeVFSSSL *ssl,
                       GnomeVFSCancellation *cancellation);

Free resources used by ssl and close the connection.

Parameters

ssl

SSL socket to be closed and destroyed.

 

cancellation

handle allowing cancellation of the operation.

 

gnome_vfs_ssl_to_socket ()

GnomeVFSSocket *
gnome_vfs_ssl_to_socket (GnomeVFSSSL *ssl);

Wrap an SSL socket inside a standard GnomeVFSSocket.

Parameters

ssl

SSL socket to convert into a standard socket.

 

Returns

a newly allocated GnomeVFSSocket corresponding to ssl .


gnome_vfs_ssl_set_timeout ()

GnomeVFSResult
gnome_vfs_ssl_set_timeout (GnomeVFSSSL *ssl,
                           GTimeVal *timeout,
                           GnomeVFSCancellation *cancellation);

Set a timeout of timeout . If timeout is NULL following operations will block indefinitely).

Note if you set timeout to 0 (means tv_sec and tv_usec are both 0) every following operation will return immediately. (This can be used for polling.)

Parameters

ssl

SSL socket to set the timeout of.

 

timeout

the timeout.

 

cancellation

optional cancellation object.

 

Returns

GnomeVFSResult indicating the success of the operation.

Since: 2.8

Types and Values

GnomeVFSSSL

typedef struct GnomeVFSSSL GnomeVFSSSL;