ESourceAuthentication

ESourceAuthentication — ESource extension for authentication settings

Object Hierarchy

    GObject
    ╰── ESourceExtension
        ╰── ESourceAuthentication

Includes

#include <libedataserver/libedataserver.h>

Description

The ESourceAuthentication extension tracks authentication settings for a user account on a remote server.

Access the extension as follows:

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

ESourceAuthentication *extension;

extension = e_source_get_extension (source, E_SOURCE_EXTENSION_AUTHENTICATION);

Functions

e_source_authentication_required ()

gboolean
e_source_authentication_required (ESourceAuthentication *extension);

This is a convenience function which returns whether authentication is required at all, regardless of the method used. This relies on the convention of setting “method” to "none" when authentication is not required.

Parameters

extension

an ESourceAuthentication

 

Returns

whether authentication is required at all

Since: 3.6


e_source_authentication_ref_connectable ()

GSocketConnectable *
e_source_authentication_ref_connectable
                               (ESourceAuthentication *extension);

Returns a GSocketConnectable instance constructed from extension 's “host” and “port” properties, or NULL if the “host” is not set.

The returned GSocketConnectable is referenced for thread-safety and must be unreferenced with g_object_unref() when finished with it.

Parameters

extension

an ESourceAuthentication

 

Returns

a GSocketConnectable, or NULL.

[transfer full]

Since: 3.8


e_source_authentication_get_host ()

const gchar *
e_source_authentication_get_host (ESourceAuthentication *extension);

Returns the host name used to authenticate to a remote account.

Parameters

extension

an ESourceAuthentication

 

Returns

the host name of a remote account

Since: 3.6


e_source_authentication_dup_host ()

gchar *
e_source_authentication_dup_host (ESourceAuthentication *extension);

Thread-safe variation of e_source_authentication_get_host(). 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 ESourceAuthentication

 

Returns

a newly-allocated copy of “host”

Since: 3.6


e_source_authentication_set_host ()

void
e_source_authentication_set_host (ESourceAuthentication *extension,
                                  const gchar *host);

Sets the host name used to authenticate to a remote account.

The internal copy of host is automatically stripped of leading and trailing whitespace. If the resulting string is empty, NULL is set instead.

Parameters

extension

an ESourceAuthentication

 

host

a host name, or NULL.

[allow-none]

Since: 3.6


e_source_authentication_get_method ()

const gchar *
e_source_authentication_get_method (ESourceAuthentication *extension);

Returns the authentication method for a remote account. There are no pre-defined method names; backends are free to set this however they wish. If authentication is not required for a remote account, the convention is to set “method” to "none".

Parameters

extension

an ESourceAuthentication

 

Returns

the authentication method for a remote account

Since: 3.6


e_source_authentication_dup_method ()

gchar *
e_source_authentication_dup_method (ESourceAuthentication *extension);

Thread-safe variation of e_source_authentication_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 ESourceAuthentication

 

Returns

a newly-allocated copy of “method”

Since: 3.6


e_source_authentication_set_method ()

void
e_source_authentication_set_method (ESourceAuthentication *extension,
                                    const gchar *method);

Sets the authentication method for a remote account. There are no pre-defined method names; backends are free to set this however they wish. If authentication is not required for a remote account, the convention is to set the 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 ESourceAuthentication

 

method

authentication method, or NULL.

[allow-none]

Since: 3.6


e_source_authentication_get_port ()

guint16
e_source_authentication_get_port (ESourceAuthentication *extension);

Returns the port number used to authenticate to a remote account.

Parameters

extension

an ESourceAuthentication

 

Returns

the port number of a remote account

Since: 3.6


e_source_authentication_set_port ()

void
e_source_authentication_set_port (ESourceAuthentication *extension,
                                  guint16 port);

Sets the port number used to authenticate to a remote account.

Parameters

extension

an ESourceAuthentication

 

port

a port number

 

Since: 3.6


e_source_authentication_get_proxy_uid ()

const gchar *
e_source_authentication_get_proxy_uid (ESourceAuthentication *extension);

Returns the “uid” of the ESource that holds network proxy settings for use when connecting to a remote account.

Parameters

extension

an ESourceAuthentication

 

Returns

the proxy profile “uid”

Since: 3.12


e_source_authentication_dup_proxy_uid ()

gchar *
e_source_authentication_dup_proxy_uid (ESourceAuthentication *extension);

Thread-safe variation of e_source_authentication_get_proxy_uid(). 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 ESourceAuthentication

 

Returns

a newly-allocated copy of “proxy-uid”

Since: 3.12


e_source_authentication_set_proxy_uid ()

void
e_source_authentication_set_proxy_uid (ESourceAuthentication *extension,
                                       const gchar *proxy_uid);

Sets the “uid” of the ESource that holds network proxy settings for use when connecting to a remote account.

Parameters

extension

an ESourceAuthentication

 

proxy_uid

the proxy profile “uid”

 

Since: 3.12


e_source_authentication_get_remember_password ()

gboolean
e_source_authentication_get_remember_password
                               (ESourceAuthentication *extension);

Returns whether to offer to remember the provided password by default in password prompts. This way, if the user unchecks the option it will be unchecked by default in future password prompts.

Parameters

extension

an ESourceAuthentication

 

Returns

whether to offer to remember the password by default

Since: 3.10


e_source_authentication_set_remember_password ()

void
e_source_authentication_set_remember_password
                               (ESourceAuthentication *extension,
                                gboolean remember_password);

Sets whether to offer to remember the provided password by default in password prompts. This way, if the user unchecks the option it will be unchecked by default in future password prompts.

Parameters

extension

an ESourceAuthentication

 

remember_password

whether to offer to remember the password by default

 

Since: 3.10


e_source_authentication_get_user ()

const gchar *
e_source_authentication_get_user (ESourceAuthentication *extension);

Returns the user name used to authenticate to a remote account.

Parameters

extension

an ESourceAuthentication

 

Returns

the user name of a remote account

Since: 3.6


e_source_authentication_dup_user ()

gchar *
e_source_authentication_dup_user (ESourceAuthentication *extension);

Thread-safe variation of e_source_authentication_get_user(). 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 ESourceAuthentication

 

Returns

a newly-allocated copy of “user”

Since: 3.6


e_source_authentication_set_user ()

void
e_source_authentication_set_user (ESourceAuthentication *extension,
                                  const gchar *user);

Sets the user name used to authenticate to a remote account.

The internal copy of user is automatically stripped of leading and trailing whitespace. If the resulting string is empty, NULL is set instead.

Parameters

extension

an ESourceAuthentication

 

user

a user name, or NULL.

[allow-none]

Since: 3.6


e_source_authentication_get_credential_name ()

const gchar *
e_source_authentication_get_credential_name
                               (ESourceAuthentication *extension);

Returns the credential name used to pass the stored or gathered credential (like password) into the e_source_invoke_authenticate(). This is a counterpart of the authentication method. The NULL means to use the default name, which is E_SOURCE_CREDENTIAL_PASSWORD.

Parameters

extension

an ESourceAuthentication

 

Returns

the credential name to use for authentication, or NULL

Since: 3.16


e_source_authentication_dup_credential_name ()

gchar *
e_source_authentication_dup_credential_name
                               (ESourceAuthentication *extension);

Thread-safe variation of e_source_authentication_get_credential_name(). 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 ESourceAuthentication

 

Returns

a newly-allocated copy of “credential-name”

Since: 3.16


e_source_authentication_set_credential_name ()

void
e_source_authentication_set_credential_name
                               (ESourceAuthentication *extension,
                                const gchar *credential_name);

Sets the credential name used to pass the stored or gathered credential (like password) into the e_source_invoke_authenticate(). This is a counterpart of the authentication method. The NULL means to use the default name, which is E_SOURCE_CREDENTIAL_PASSWORD.

The internal copy of credential_name is automatically stripped of leading and trailing whitespace. If the resulting string is empty, NULL is set instead.

Parameters

extension

an ESourceAuthentication

 

credential_name

a credential name, or NULL.

[allow-none]

Since: 3.16

Types and Values

E_SOURCE_EXTENSION_AUTHENTICATION

#define E_SOURCE_EXTENSION_AUTHENTICATION "Authentication"

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

Since: 3.6


struct ESourceAuthentication

struct ESourceAuthentication;

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

Since: 3.6