ESourceSecurity

ESourceSecurity — ESource extension for security settings

Types and Values

Object Hierarchy

    GObject
    ╰── ESourceExtension
        ╰── ESourceSecurity

Includes

#include <libedataserver/libedataserver.h>

Description

The ESourceSecurity extension tracks settings for establishing a secure connection with a remote server.

Access the extension as follows:

1
2
3
4
5
#include <libedataserver/libedataserver.h>

ESourceSecurity *extension;

extension = e_source_get_extension (source, E_SOURCE_EXTENSION_SECURITY);

Functions

e_source_security_get_method ()

const gchar *
e_source_security_get_method (ESourceSecurity *extension);

Returns the method used to establish a secure network connection to a remote account. There are no pre-defined method names; backends are free to set this however they wish. If a secure connection is not desired, the convention is to set “method” to "none".

Parameters

extension

an ESourceSecurity

 

Returns

the method used to establish a secure network connection

Since: 3.6


e_source_security_dup_method ()

gchar *
e_source_security_dup_method (ESourceSecurity *extension);

Thread-safe variation of e_source_security_get_method(). Use this function when accessing extension from multiple threads.

The returned string should be freed with g_free() when no longer needed.

Parameters

extension

an ESourceSecurity

 

Returns

a newly-allocated copy of “method”

Since: 3.6


e_source_security_set_method ()

void
e_source_security_set_method (ESourceSecurity *extension,
                              const gchar *method);

Sets the method used to establish a secure network connection to a remote account. There are no pre-defined method names; backends are free to set this however they wish. If a secure connection is not desired, the convention is to set “method” to "none". In keeping with that convention, “method” will be set to "none" if method is NULL or an empty string.

Parameters

extension

an ESourceSecurity

 

method

security method, or NULL.

[allow-none]

Since: 3.6


e_source_security_get_secure ()

gboolean
e_source_security_get_secure (ESourceSecurity *extension);

This is a convenience function which returns whether a secure network connection is desired, regardless of the method used. This relies on the convention of setting “method” to "none" when a secure network connection is not desired.

Parameters

extension

an ESourceSecurity

 

Returns

whether a secure network connection is desired

Since: 3.6


e_source_security_set_secure ()

void
e_source_security_set_secure (ESourceSecurity *extension,
                              gboolean secure);

This function provides a simpler way to set “method” when using a secure network connection is a yes or no option and the exact method name is unimportant. If secure is FALSE, the “method” property is set to "none". If secure is TRUE, the function assumes the backend will use Transport Layer Security and sets the “method” property to "tls".

Parameters

extension

an ESourceSecurity

 

secure

whether a secure network connection is desired

 

Since: 3.6

Types and Values

E_SOURCE_EXTENSION_SECURITY

#define E_SOURCE_EXTENSION_SECURITY "Security"

Pass this extension name to e_source_get_extension() to access ESourceSecurity. This is also used as a group name in key files.

Since: 3.6


struct ESourceSecurity

struct ESourceSecurity;

Contains only private data that should be read and manipulated using the functions below.

Since: 3.6